SSH---集成Struts2+Spring+Hibernate(一)

简介:


SSH---集成Struts2+Spring+Hibernate(一)


 

        本方案让Spring创建Struts2的Action,不让Spring完全管理Struts2的Action,Struts2Action中的依赖对象,默认会根据名称自动装配

 

        1、创建web项目

 

        2、引入Struts2的依赖包,将依赖包拷贝到WEB-INF/lib下

*commons-logging-1.0.4.jar
*freemarker-2.3.15.jar
*ognl-2.7.3.jar
* struts2-core-2.1.8.1.jar
*xwork-core-2.1.6.jar
*commons-fileupload-1.2.1.jar

 

        3、引入Spring的依赖包,将依赖包拷贝到WEB-INF/lib下

*spring.jar
*lib/aspectj/*.jar


        4、引入hibernate相关依赖包,将依赖包拷贝到WEB-INF/lib下

*hibernate3.jar
*lib/*.jar

 

        5、数据库驱动

*MySQl JDBC Driver

 

        6、将Struts2和Spring集成的依赖包拷贝到WEB-INF/lib下

*struts2-spring-plugin-2.1.8.1.jar

 

        7、在web.xml文件中配置StrutsPrepareAndExecuteFilter

    <filter>
       <filter-name>struts2</filter-name>
       <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
 
   <filter-mapping>
       <filter-name>struts2</filter-name>
       <url-pattern>/*</url-pattern>
   </filter-mapping>

   

        8、提供struts.xml配置文件,提供必要属性的配置

*struts.i18n.encoding=GB18030
* struts.configuration.xml.reload=true
*struts.devMode=true  

 

        9、提供Spring的配置文件

*applicationContext-service.xml
*applicationContext-dao.xml
*applicationContext-common.xml

 

        10、提供hibernate.cfg.xml配置文件,提供log4j


 

        11、在web.xml文件中配置Spring的ContextLoaderListener,创建BeanFactory

   <context-param>
           <param-name>contextConfigLocation</param-name>
           <!--
           <param-value>classpath:applicationContext-*.xml</param-value>
            -->
           <param-value>classpath:applicationContext.xml</param-value>
   </context-param>
   
    <listener>
           <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

   

        12、在web.xml文件中配置OpenSessionInViewFilter(需要放到Struts2的Filter前面)

<filter>
<filter-name>OpenSessionInViewFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
 
<filter-mapping>
<filter-name>OpenSessionInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


        13、提供用户添加表单和add_success.jsp

 


        14、建立User实体类,编写hibernate映射文件,将映射文件加入到hibernate.cfg.xml中

 <mapping resource="/com/tgb/usermgr/domain/User.hbm.xml"/>

        15、建立UserDao和UserService,并进行实现

UserDao

//UserDao接口
 package com.tgb.usermgr.dao;
import com.tgb.usermgr.domain.User;
 
public interfaceUserDao {
 
   public void add(User user);
}
//UserDao实现
packagecom.tgb.usermgr.dao.impl;
 
importorg.springframework.orm.hibernate3.support.HibernateDaoSupport;
 
importcom.tgb.usermgr.dao.UserDao;
importcom.tgb.usermgr.domain.User;
 
publicclass UserDaoImpl extends HibernateDaoSupport implements UserDao {
 
   public void add(User user) {
      getHibernateTemplate().save(user);    
   }
}


UserService

//UserService接口
package com.tgb.usermgr.service;
 
import com.tgb.usermgr.domain.User;
 
public interfaceUserService {
 
   public  void add(User user);
}
 
//UserService实现
packagecom.tgb.usermgr.service.impl;
 
importcom.tgb.usermgr.dao.UserDao;
importcom.tgb.usermgr.domain.User;
importcom.tgb.usermgr.service.UserService;
 
publicclass UserServiceImpl implements UserService {
 
   private UserDao userDao;
  
   public void add(User user) {
      userDao.add(user);
   }
 
   public void setUserDao(UserDao userDao) {
      this.userDao = userDao;
   }
 
}

 

        16、建立Struts2的Action,并配置到Struts2的配置文件中

 <struts>
   <constant name="struts.i18n.encoding" value="GB18030"/>
   <constant name="struts.configuration.xml.reload" value="true"/>
   <constant name="struts.devMode" value="true"/>
   <!-- 默认根据名称自动装配Action中的依赖对象,现在修改为根据类型 -->
   <constant name="struts.objectFactory.spring.autoWire"value="type"/>
   <package name="user-package" extends="struts-default" namespace="/user">
      <action name="add" class="com.tgb.usermgr.web.action.AddUserAction">
        <result>/add_success.jsp</result>
      </action>
   </package>
</struts>


        17、在jsp中调用Action

<body>
   <form action="user/add.action">
     用户代码:<input type="text" name="user.userCode"><br>
     用户姓名:<input type="text" name="user.userName"><br>
     年龄:<input type="text" name="user.age"><br>
         <input type="submit"value="添加">
   </form>
  </body>

        最后附上框架的下载链接:http://download.csdn.net/detail/senior_lee/9059887


目录
相关文章
|
4月前
|
Java 数据库连接 数据库
让星星⭐月亮告诉你,SSH框架01、Spring概述
Spring是一个轻量级的Java开发框架,旨在简化企业级应用开发。它通过IoC(控制反转)和DI(依赖注入)降低组件间的耦合度,支持AOP(面向切面编程),简化事务管理和数据库操作,并能与多种第三方框架无缝集成,提供灵活的Web层支持,是开发高性能应用的理想选择。
63 1
|
6月前
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
216 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
6月前
|
数据库 Java 数据库连接
Struts 2 与 Hibernate 的完美邂逅:如何无缝集成两大框架,轻松玩转高效 CRUD 操作?
【8月更文挑战第31天】本文通过具体示例介绍了如何在 Struts 2 中整合 Hibernate,实现基本的 CRUD 操作。首先创建 Maven 项目并添加相关依赖,接着配置 Hibernate 并定义实体类及其映射文件。然后创建 DAO 接口及实现类处理数据库操作,再通过 Struts 2 的 Action 类处理用户请求。最后配置 `struts.xml` 文件并创建 JSP 页面展示用户列表及编辑表单。此示例展示了如何配置和使用这两个框架,使代码更加模块化和可维护。
212 0
|
8月前
|
前端开发 Java 关系型数据库
在Spring3 MVC中五步配置集成注解方式Hibernate3
在Spring3 MVC中五步配置集成注解方式Hibernate3
59 3
|
7月前
|
Java 数据库连接 数据库
如何在Spring Boot中集成Hibernate
如何在Spring Boot中集成Hibernate
|
8月前
|
XML Java Apache
必知的技术知识:HHS整合(Struts2+Spring+Hibernate)
必知的技术知识:HHS整合(Struts2+Spring+Hibernate)
56 0
|
9月前
|
SQL Java 数据库连接
jpa、hibernate、spring-data-jpa、jdbcTemplate
jpa、hibernate、spring-data-jpa、jdbcTemplate
108 1
|
9月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——updateEmp.jsp
ssh(Spring+Spring mvc+hibernate)——updateEmp.jsp
|
9月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——updateDept.jsp
ssh(Spring+Spring mvc+hibernate)——updateDept.jsp
|
9月前
|
网络安全
ssh(Spring+Spring mvc+hibernate)——showEmp.jsp
ssh(Spring+Spring mvc+hibernate)——showEmp.jsp

热门文章

最新文章