一、struts2.0與spring2.0的整合
1、新建web項目
加入struts2.0和spring的各種架包。
struts2.0的基本架包:
common-logging-1.0.4.jar freemarker-2.3.8.jar
ognl-2.6.11.jar struts2-core-2.0.11.2.jar xwork-2.0.5.jar
spring 的架包:spring-2.0.jar
特別的注意加入:
commons-pool-1.4.jar 解決spring和hibernate整合時,數據源datasource的問題,可以去http://commons.apache.org/downloads/download_pool.CGI下載
struts2-spring-plugin-2.0.11.2.jar 解決struts2和spring整合時,將struts的管理托管給spring
2、修改web.XML文件,加入:
<filter>
<filter-name>struts-cleanup</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ActionContextCleanUp
</filter-class>
</filter>
上面一段是讓程序知道在正確的時候清除請求(servletContext),而不是立即清除,方便在程序中取得servletContext。
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
上面一段是配置spring 的監聽,方便spring與web的容器交互。
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.XML</param-value>
</context-param>
上面是定義spring.XML文件的上下文配置,如果擁有多個spring的配置文件,可以用空格或逗號隔開。
3、修改struts.XML文件
在其中加入:
<constant name="struts.objectFactory" valus="spring"/>
將struts的工廠交由spring來管理,由spring來創建對象,但是如果已經加入了struts2-spring-plugin-2.0.11.2.jar 的包,就可以不用加了。
二、spring和hibernate的整合
1、新建一web項目,或是在struts+spring的基礎上開發
2、添加spring的支持
選擇需要的庫文件。aop、core、persistence core、presistence JDBC、web,選擇這五個庫文件。
3、添加hibernate的支持
在選擇hibernate的配置文件時,我們選擇spring configuration file ,表示下網將hibernate托管給spring進行管理,使用已經存在的spring的配置文件,檢查spring的配置文件的位置,添加sessionFactory的BeanID,在下面給出的datasource數據源的BeanID,選擇數據庫的驅動名字,不創建sessionfactory class。
4、添加hibernate的反向工程
在myeclipse database explorer視圖中,將表反轉到hibernate中。