快速整合struts+spring+hibernate

本文详细介绍了如何在MyEclipse环境下快速整合Struts、Spring和Hibernate(SSH)三大框架,包括项目的搭建步骤、配置文件的设置等关键信息,并提供了日志工具Log4J的配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

快速整合struts+spring+hibernate

说明:

使用平台:Eclipse3.2、MyEclipse5.01GA
Struts、Spring、Hibernate三个框架在MyEclipse下添加顺序为:
首先新建一个Web Project,

添加Add Struts Capabilities…,设置好包路径后继续;

选择MyEclipse菜单下的Add Spring Capabilities…选择所有的标签库,JAR Library Installation位置选择“Copy”项,下一步,设置Spring Bean配置文件位置,一般就默认在SRC目录,点击完成,就添加了Spring,继续;

切换到MyEclipse Database Explorer(数据库浏览器视图),添加一个数据连接,测试连接成功后继续,这一步是为了给下面添加Hibernate框架准备的,因为它在建立过程中需要指定一个有效连接数据库的连接;

选择MyEclipse菜单下的Add Hibernate Capabilities…选择反有的标签库,包括Spring的,JAR Library Installation位置还是选择“Copy”项,下一步;因为之前添加了Spring框架,所以这里就会自动识别到,并询问你使用Hibernate的配置文件“hibernate.cfg.xml”还是使用Spring的配置文件“applicationContext.xml”,这里选择Spring来统一配置,下一步;此处是定义Spring配置文件是需要新建还是使用已存在的Spring配置文件,这里选择Existing Spring configuration file,即使用已存在的Spring配置文件“src/applicationContext.xml”,下方需要指定Hibernate的SessionFactory在Spring配置文件中的Bean ID,使用“sessionFactory”即可,下一步;在DB Profile的下拉列表中选择刚刚建立的连接,并在Bean ID处设置这个DataSource在Spring配置文件中的Bean ID名,这里使用“DataSource”,下一步;接下来的Define SessionFactory properties界面是配置Hibernate的SessionFactory工具类存放位置,设置好包路径后,下一步;点击Finish,就完成了对Struts、Spring、Hibernate三个框架的设置。

这里还需要配置Log4J(日志工具),只需将以下两个文件复制到SRC目录下即可
commons-loggingproperties.properties
log4j.properties
至于这两文件里的具体配置就不再多说。

接下来,先完成JSP页面、ActionForm、及Action的添加,添加过程就不再多说。再就是为数据表添加持久化类,过程是在MyEclipse DataBase Explorer中打开连接,找到所需的表后,鼠标右键点击表名,选择“Hibernate Reverse Engineering…”,设置了包路径后,依次钩选“Hibernate Mapping File”、“Java Data Object”(取消钩选“Create abstract class”)以及“Java Data Access Object(DAO)”,在“Java Data Access Object(DAO)”下会自动钩选“Generate precise findby methods”,以及选择“Spring DAO”选项,使用“Spring DAO”后,在DAO类里转而使用了HibernateTemplate对象来操作数据库,据说可以免去事务管理,具体情况,明天再继续研究。生成完持久化类后,需要在Struts-config.xml文件里添加以下字段:
<plug-in className=
  "org.springframework.web.struts.ContextLoaderPlugIn">
    <set-property property=
      "contextConfigLocation" value="/WEB-INF/classes/applicationContext.xml"/>
</plug-in>

Value值就指定了Spring配置文件applicationContext.xml文件具体包位置。

接着在Action中需要做以下操作:
导入import org.springframework.web.struts.ActionSupport;包
原先Action是继承Action类的,例:
public class EmployeeListAction extends Action
这里将它改为继承ActionSupport类,例:
public class EmployeeListAction extends ActionSupport

生成一个数据表的DAO对象,格式如下:
EmployeeinfoDAO empDao=EmployeeinfoDAO.getFromApplicationContext(this.getWebApplicationContext());       
List empList=empDao.getHibernateTemplate().loadAll(Employeeinfo.class);   


如此就完成了读取一个数据表里所有字段的操作,是不是很简单呢? 

SSH整合示例(详情见我博客专栏)之前的博客我们总结了spring基础、spring分别整合struts2、hibernate、mybatis等,今天我们来同时整合strutsspringhibernate,也就是所谓的 ssh 。 整合流程: 1 首先整合springhibernate,这次我们在spring 中配置bean使用注解的方式 ,hibernate实体映射关系也使用注解的方式,配置完毕后用简单方法测试下hibernate是否整合成功。 a 加入支持:添加 spring核心包、hibernate 3.6 包、 spring整合hibernate包 , 在src下建立applicationContext.xml (先建立src下便于测试hibernate)。 b 编写实体类,加入hibernate注解,编写方法类测试类,在applicationContext.xml中添加hibernate模板类配置以及包扫描语句 。在类中添加spring bean注解。 c 测试类中 主动解析applicationContext.xml ,获取bean 执行dao层方法进行测试 2 将struts2 整合进去, 这次在struts.xml中我们使用通配符的方式配置action。 a 加入支持 : 添加struts2.3.15 必需包 以及 struts json包(ajax要用到),spring整合struts2包,spring web 包,在src目录下建立struts.xml,复制头文件进去。将applicationContext.xml移到WEB-INF目录下。web容器中(web.xml)中添加struts2 filter以及spring 监听器。 b 在struts.xml中添加action,使用通配符的方式 , 注意这里和单独struts2不同的地方: class属性指向的是bean 的 id ,这里我们配置bean采用spring ioc注解的方式, 所以默认的bean的id 为 类名(首字母小写) c 编写action类、页面进行测试
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值