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");