您的位置:首页 > 编程语言 > Java开发

集成Struts2+Spring+Hibernate_两种方案

2015-09-15 20:04 471 查看
集成Struts2+Spring+Hibernate

第一种方案:让Spring创建Struts2的Action,不让Spring完全管理Struts2的Action

Struts2 Action中的依赖对象,默认会根据名称自动装配

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>、

11、在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>

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

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

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

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

16、在jsp中调用Action

第二种方案(推荐):

集成Struts2+Spring+Hibernate

第一种方案:让Spring创建Struts2的Action,Spring完全管理Struts2的Action

将Struts2的Action配置到Spring的配置文件中

1、提供Spring配置文件,配置Struts2的Action

* applicationContext-action.xml

2、在Spring中必须注入Struts2中Action的的依赖对象

<bean id="addUserAction" class="com.bjpowernode.usermgr.web.action.AddUserAction" scope="prototype">

<property name="userService" ref="userService"/>

</bean>

!!!必须设置scope="prototype"

3、struts.xml配置文件需要修改,<action>标签中的class属性值和IoC容器中本次请求对应的Action的id值相同

<package name="user-package" extends="struts-default" namespace="/user">

<action name="add" class="addUserAction">

<result>/add_success.jsp</result>

</action>

</package>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: