5.1Web项目的开发指导书

  • 格式:doc
  • 大小:851.50 KB
  • 文档页数:35

Web项目的开发指导书

DAO设计模式是属于J2EE数据层的操作,使用DAO设计模式可以简化大量代码和增加程序移植性。

(1)DAO接口

(2)DAO实现类

(3)DAO工厂类

(4)VO类

(5)数据库连接类 MVC把交互系统的组成分解成模型、视图、控制器三种部件。JSP负责显示,而控制器则由Servlet充当,使用Servlet来接受参数和判断还有跳转等功能,模型由JavaBean充当。它负责所有的业务逻辑并通过JavaBean来操作数据库以及决定显示页面。MVC设计模式开发过程:

(1) 用户登录页面—View:Login.jsp

(2) 用户登录成功和失败页面—View:LoginSucess.jsp,LoginFailure.jsp

(3) 业务逻辑组件—Model:LoginCheck.java

(4) Servlet控制器—Controller:LoginConf.java

(5) Servlet配置文件--Web.xml

一、配置spring MVC

1.新建web工程

2.增加spring支持

3.增加hibernate支持

4. 新建vo包、dao包、hibernate包及相关的类,拷贝BaseVo.java, BaseDao.java,

BaseHibernate.java

5.新建VO

6.新建DAO

7.新建Hibernate

8.jsp

9.form

10.controller

11.authors.servlet.xml

12.ApplicationContext.xml

package com.book.vo;

浏览器Servlet(控制器)JSP(试图)Web服务器数据库1.HTTP请求2.实例化3.操作数据库6.HTTP响应JavaBean(模型)5.调用4.跳转public class BaseVo {

public int id;

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

}

package com.book.dao;

import java.util.List;

import com.book.vo.BaseVo;

public interface BaseDao {

//保存操作

public boolean saveObject(BaseVo vo) throws Exception;

//更新操作

public boolean updateObject(BaseVo vo) throws Exception;

//删除操作

public boolean delObject(BaseVo vo) throws Exception;

//删除集合操作

public boolean delAllObject(List list) throws Exception;

//查询列表

public List getObject(String tableName) throws Exception;

//根据关键字查询

public BaseVo getObjectById(String Id, String tableName) throws Exception;

//取序列

public long getSeqValue(String tableName) throws Exception;

} package com.book.hibernate;

import org.apache.log4j.Logger;

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.Statement;

import java.util.List;

import org.hibernate.Query;

import org.hibernate.Session;

import org.springframework.dao.DataAccessException;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.book.vo.*;

public class BaseHibernate extends HibernateDaoSupport {

/**

* Log4J Logger for this class

*/

private static final Logger logger = Logger.getLogger(BaseHibernate.class);

// 保存操作

public boolean saveObject(BaseVo basevo) throws Exception {

if (logger.isDebugEnabled()) {

logger.debug("saveObject(BaseVo basevo = " + basevo + ") - start");

}

//boolean bReturnV = true;

try {

getHibernateTemplate().save(basevo);

if (logger.isDebugEnabled()) {

logger.debug(

"saveObject(BaseVo basevo = " + basevo + ") - end");

}

return true;

} catch (DataAccessException e) {

logger.error("saveObject(BaseVo basevo = " + basevo + ")", e);

e.printStackTrace();

//bReturnV = false; throw e;

} catch (Exception e2) {

logger.error("saveObject(BaseVo basevo = " + basevo + ")", e2);

e2.printStackTrace();

throw e2;

}

}

// 更新操作

public boolean updateObject(BaseVo basevo) throws Exception {

boolean bool = false;

if (logger.isDebugEnabled()) {

logger.debug(

"updateObject(BaseVo basevo = " + basevo + ") - start");

}

//boolean bReturnV = true;

try {

getHibernateTemplate().update(basevo);

//return bReturnV;

if (logger.isDebugEnabled()) {

logger.debug(

"updateObject(BaseVo basevo = " + basevo + ") - end");

}

bool = true;

} catch (DataAccessException e) {

logger.error("updateObject(BaseVo basevo = " + basevo + ")", e);

e.printStackTrace();

//bReturnV = false;

throw e;

}

return bool;

}

//删除操作

public boolean delObject(BaseVo basevo) throws Exception {

if (logger.isDebugEnabled()) {

logger.debug("delObject(BaseVo basevo = " + basevo + ") - start");

}

//boolean rFlag = true; try {

getHibernateTemplate().delete(basevo);

//return rFlag;

if (logger.isDebugEnabled()) {

logger.debug("delObject(BaseVo basevo = " + basevo + ") - end");

}

return true;

} catch (DataAccessException e) {

logger.error("delObject(BaseVo basevo = " + basevo + ")", e);

e.printStackTrace();

//rFlag = false;

throw e;

}

}

//删除集合操作

public boolean delAllObject(List list) throws Exception {

if (logger.isDebugEnabled()) {

logger.debug("delAllObject(List list = " + list + ") - start");

}

//boolean rFlag = true;

try {

getHibernateTemplate().deleteAll(list);

//return rFlag;

if (logger.isDebugEnabled()) {

logger.debug("delAllObject(List list = " + list + ") - end");

}

return true;

} catch (DataAccessException e) {

logger.error("delAllObject(List list = " + list + ")", e);

//e.printStackTrace();

//rFlag = false;

throw e;

}

}

//查询列表

public List getObject(String tableName) throws Exception {

if (logger.isDebugEnabled()) {

logger.debug(

"getObject(String tableName = " + tableName + ") - start");