写下来以作后用:
1、框架搭建:
<1>*完成Sruts2+Spring+Hibernate+JSTL+Oracle搭建
*Struts2依赖包
*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
*commons-io-1.3.2.jar
*Spring依赖包
*spring.jar
*aspectj/*.jar
*Hibernate依赖包
*lib/*.jar
*hibernate3.jar
*Oracle数据库驱动
*ojdbc14.jar
*JSTL依赖包
*jstl.jar
*standard.jar
*Struts2和Spring集成插件
*struts2-spring-plugin-2.1.8.1.jar
*提供struts.xml配置文件
<constantname="struts.configuration.xml.reload" value="true"/>
<constantname="struts.devMode" value="true"/>
<constantname="struts.i18n.reload" value="true"/>
<constantname="struts.i18n.encoding" value="UTF-8"/>
*修改web.xml文件,配置sruts2的中央控制器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>
*提供spring配置文件
*修改web.xml文件,提供ContextLoaderListener
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-*.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
*修改web.xml文件,提供OpenSessionInViewFilter(必须放到Struts2的StrutsPrepareAndExecuteFilter的前面)
<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>
* 提供hibernate.cfg.xml配置文件和log4j.properties
2、测试:
单元测试类必须继承AbstractTransactionalSpringContextTests
*在单元测试类中需要的service,需要提供setter方法,IoC容器会根据类型注入的
*需要覆盖getConfigLocations()方法,返回spring的配置文件
*必须setComplete()方法显示的提交事务