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


Spring, Hibernate與Struts集成的大概思路

Spring, Hibernate與Struts集成的大概思路

 

https://blog.csdn.net/lwj3025/archive/2007/11/14/1885587.aspx

 

 

 

這篇文章是筆者在再次讀了夏昕的《Spring Guide》後的一些總結。由於本人最熟悉的是Struts,而對Spring、Hibernate還沒有很多的實踐經驗,所以雖然這篇文章講的是三者的集成,但主要還是以Struts為中心。

    首先看一下Struts與Spring的集成。

    首先看一下在struts-config.xml中需要做的改動,最開始是加入插件聲明:

 

 

<struts-config>
<plug-in
className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext.xml" />
</plug-in>
</struts-config>

 

 

 

 

還有一個需要在Struts配置文件中改的是它的ActionMapping部分,這個在後麵再說。

    事實上Struts中加入Spring並不是很複雜,最重要的是我們需要清楚係統是不是一定要Spring,即Spring的所謂依賴注入等特性對開發的意義是不是要大於使用Spring後增加的開發成本。

    下麵用圖來說明Struts與Spring結合後的程序運行基本流程:

 

 

 

 

 

如上所示,Struts與Spring集成最重要的一點就是改變struts-config.xml中的Action-Mapping設置,在進入Struts的Action之前,Spring就獲得了控製權。

    Spring和Struts集成的部分就先說到這裏。

    有關Struts和Hibernate的集成,內容不是很複雜,我歸納了以下幾個要點:

    1、Hibernate-Context.xml

    這個文件的<bean>項中需要設定SessionFactory屬性,Spring已經整合了SessionFactory設置,所以無需hibernate.cfg.xml再設了。同時,這個項中也可以設定映射文件.hbm.xml的列表。

    2、DAO繼承HibernateDaoSupport,以調用其函數

    HibnernateDaoSupport實現了HibernateTemplate與SessionFactory的關聯。HibernateTemplate(用HibnernateDaoSupport裏的getHibernateTemplate()可以獲得)對Hibernate Session進行了封裝,可省去獲得Session實例、事務啟動與提交/回滾以及異常處理等一係列步驟,所以非常簡單。

    上麵從兩個方麵講了Struts、Spring和Hibernate三者的集成,最後簡單歸納一下:

    通過修改Struts的配置文件,Spring得以獲得對Struts中Action的控製權,同時也將Spring的特性加入了Struts。而與Hibernate結合以後,通過利用上述的Spring特征,簡化了數據庫操作。


https://blog.csdn.net/lwj3025/archive/2007/11/14/1885587.aspx

 

 

 

 

 

 

 

 

 

最後更新:2017-04-02 05:21:03

  上一篇:go Myeclipse7.5中關閉updating indexes方法
  下一篇:go ruby關於檢查IP地址正則的例子