SSH程序开发框架搭建过程

Struts/Spring/Hibernate(SSH)

SSH程序开发框架搭建过程

文/杜轶,陈盟

2004.12.14

目标: 搭建Struts+Spring+Hibernate的MVC体系

参考: AppFuse以及网上流传的一套很常用的SSH体系.

安装步骤:

1)安装Eclipse
2)安装MyEclipse
3)安装Tomcat
4)在Eclipse中配置Tomcat
5)把Spring所需的包拷入/WEB-INF/lib下

 

总体结构概览

一.配置文件
二.程序包结构
三.程序结构详细说明

一.配置文件

系统配置文件共有:

System:

/WEB-INF/web.xml
上下文环境监听器
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

Spring:

在/WEB-INF下新建一个名叫spring-config的文件夹用来放置Spring的配置文件,如果Struts也是采用多配置文件方式,建议照此办理.

/WEB-INF/spring-config/applicationContext-resources.xml
/WEB-INF/spring-config/applicationContext-hibernate.xml
/WEB-INF/spring-config/applicationContext-service.xml

Struts

/WEB-INF/struts-config.xml

二.程序包结构

com.yourdomain.appname.dao
com.yourdomain.appname.dao.hibernate
com.yourdomain.appname.model
com.yourdomain.appname.service
com.yourdomain.appname.service.impl
com.yourdomain.appname.util
com.yourdomain.appname.webapp
com.yourdomain.appname.webapp.action
com.yourdomain.appname.webapp.filter
com.yourdomain.appname.webapp.form
com.yourdomain.appname.webapp.listener
com.yourdomain.appname.webapp.taglib
com.yourdomain.appname.webapp.util

三.程序结构详细说明(具体内容参见框架实例)

DAO层

总接口
子接口继承自总接口
总类继承自
org.springframework.orm.hibernate.support.HibernateDaoSupport
同时实现总接口

子类继承自总类同时实现子接口
通过getHibernateTemplate()(总类的父类HibernateDaoSupport提供)操作数据

Model层

总类实现Serializable接口
子类实现总类同时实现Serializable接口

Service层

总接口职责
子类接口独立
总类实现总接口
调用DAO层总类的抽象方法
protected DAO dao = null;

子类继承自总类同时实现子接口
调用DAO层子类的具体方法
private UserDAO dao;

Action层

总类实现org.apache.struts.action.Action
拥有getBean方法

子类继承自总类
这样就可以直接调用父类的getBean方法获取Service层的Manager了.

代码示例如下:

MyTestUserManager mgr = (MyTestUserManager)getBean("myTestUserManager");
String userId = "00001";
String userName = "XXX";

//C
MyTestUser newUser = new MyTestUser();
newUser.setName(userName);
System.out.println(newUser.getId());
mgr.saveMyTestUser(newUser);
//R
MyTestUser myTestUser = mgr.getMyTestUser(userId);
//U
MyTestUser updateUser = mgr.getMyTestUser(userId);
updateUser.setName(userName);
mgr.saveMyTestUser(updateUser);
//D
mgr.removeMyTestUser(UserId);

 

 

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值