閱讀198 返回首頁    go 阿裏雲 go 技術社區[雲棲]


SSH整合步驟

Spring+Struts

 

1. 在web.xml中注冊偵聽器:

 <listener> 
  <listener-class>
   org.springframework.web.context.ContextLoaderListener
  </listener-class> 
 </listener>

 <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/beans.xml</param-value>
 </context-param>

 

2. 將Spring的jar包添加到項目中, 除了Spring的jar包以外,還需要struts2-spring-plugin-2.2.1.jar, 將log4j.properties放入src下

 

3. 在strtus.xml中添加常量:<constant name="struts.objectFactory" value="spring"/>意思是對象工廠由spring來充當

 

4. 修改Action的代碼,將Action中獲得Dao的方式由原來直接new改成:將Dao作為屬性放入Action

 

5. 在Spring的配置文件中對項目中用到的類進行配置, 主要是Action和DaoDao配置成單例的

     Action配置成原型(每個請求是新的實例進行處理,避免線程安全的問題)

 

6. 修改struts.xml配置文件,將原來在class中配置的action的完全限定名 修改成 spring配置文件中配置的id屬性

 

 

Spring和Hibernate整合


7. 自定義的Dao繼承與Spring提供的類HibernateDaoSupport()類

     同時實現自己的接口直接調用HibernateTemplate()實現持久化操作。

 

8. 在Spring的配置文件中,添加如下配置:
 
 <bean
  >
  <property name="driverClassName" value="com.mysql.jdbc.Driver" />
  <property name="url" value="jdbc:mysql://127.0.0.1:3306/stuinfo" />
  <property name="username" value="root" />
  <property name="password" value="123" />
 </bean>

 <bean
  >
  <property name="dataSource">
   <ref local="dataSource" />
  </property>
  <property name="configLocation">
   <value>classpath:hibernate.cfg.xml</value>
  </property>
 </bean>

 將sessionFactory注入到自定義的Dao裏。例如:

 <bean >
  <property name="sessionFactory">
   <ref bean="sessionFactory" />
  </property>
 </bean>

 

 

最後更新:2017-04-02 06:52:18

  上一篇:go 天氣預報 將1-6天的數據源和7-9天的數據源的信息匹配起來了 代碼
  下一篇:go Flurry:2012年美國和中國移動市場最具潛力