圖解MyEclipse配置struts+hibernate+spring+FreeMarker
這幾天把hibernate和spring好好看了下,再想想struts的一些東西,決定把3個整合一下一起用,表現層用struts+freemarker,業務層用spring,hibernate處理持久層。在struts中,利用委托,將action的處理委托給spring進行,struts只負責頁面邏輯。前些日子下了Eclipse 3.2+MyEclipse5.0M2,感覺MyEclipse一些東西還是不錯的,就用它來做個整合。
首先,建立一個web project:


然后,給新建立的項目附加上struts的一些文件:


完成后項目結構如下:

接著加入hibernate需要的文件:






完成后項目結構為:

再加入spring的文件:

注意下面的選擇:



完成后可以看到:

打開那個applicationContext.xml,將

改為:

現在還需要做一些修改,才能在運行的時候不報錯,我以前也寫過struts+hibernate的時候,會拋一個錯,之所以是由于hibernate包含的那個xerces.jar,所以現在直接把它給刪掉,沒什么問題。

在spring和hibernate那,有2個log4j.jar,老版本不好用,所以刪除,換一個新版本。
刪除




內容如下:

這樣log4j就配好了。
接下來是加入FreeMarker,jsp比不上,個人感覺。
先下一個freemarker.jar




下面來點實戰演習。
切換到MyEclipse的hibernate視圖。

打開數據庫連接:


然后,執行


自動生成幾個文件:

并且,spring的applicationContext.xml自動加入

然后,建立ftl頁面,根據前面web.xml配置的freemarker設置,需要建立如下目錄

先把頁面邏輯處理下,打開struts-config.xml,然后進行如下操作



繼續加




完成后效果如下:

下面是3個頁面:




這里注意下前2行,在freemarker中用struts標簽。
前面說過action委托給spring做,許要在struts那加入

然后,action類需要修改下

下面的setter是為spring準備的。
struts配置那的action聲明需要修改一下,說明用代理:

然后在spring的applicationContext.xml加上:

注意是用name,不是id。
發布,運行,結果拋了個錯

還好,問題不大,找到

開始測試

成功的話:

否則:

然后去數據庫一看,郁悶,數據沒進來,試了N久,最后發現spring里要定義個dataSource。原來sessionFactory的定義變為如下:

ok,一切正常。到這里,就寫完了,只是為說明怎樣用MyEclipse進行快速開發,畢竟平時做項目要的是進度,還要監管質量,有了MyEclipse,確實方便不少。
http://www.cnblogs.com/zxub/archive/2006/08/03/466682.html
posted on 2008-11-07 01:55 smallfa 閱讀(1897) 評論(0) 編輯 收藏 所屬分類: SSH