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


然后,給新建立的項(xiàng)目附加上struts的一些文件:


完成后項(xiàng)目結(jié)構(gòu)如下:

接著加入hibernate需要的文件:






完成后項(xiàng)目結(jié)構(gòu)為:

再加入spring的文件:

注意下面的選擇:



完成后可以看到:

打開那個(gè)applicationContext.xml,將

改為:

現(xiàn)在還需要做一些修改,才能在運(yùn)行的時(shí)候不報(bào)錯(cuò),我以前也寫過(guò)struts+hibernate的時(shí)候,會(huì)拋一個(gè)錯(cuò),之所以是由于hibernate包含的那個(gè)xerces.jar,所以現(xiàn)在直接把它給刪掉,沒(méi)什么問(wèn)題。

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




內(nèi)容如下:

這樣log4j就配好了。
接下來(lái)是加入FreeMarker,jsp比不上,個(gè)人感覺(jué)。
先下一個(gè)freemarker.jar




下面來(lái)點(diǎn)實(shí)戰(zhàn)演習(xí)。
切換到MyEclipse的hibernate視圖。

打開數(shù)據(jù)庫(kù)連接:


然后,執(zhí)行


自動(dòng)生成幾個(gè)文件:

并且,spring的applicationContext.xml自動(dòng)加入

然后,建立ftl頁(yè)面,根據(jù)前面web.xml配置的freemarker設(shè)置,需要建立如下目錄

先把頁(yè)面邏輯處理下,打開struts-config.xml,然后進(jìn)行如下操作



繼續(xù)加




完成后效果如下:

下面是3個(gè)頁(yè)面:




這里注意下前2行,在freemarker中用struts標(biāo)簽。
前面說(shuō)過(guò)action委托給spring做,許要在struts那加入

然后,action類需要修改下

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

然后在spring的applicationContext.xml加上:

注意是用name,不是id。
發(fā)布,運(yùn)行,結(jié)果拋了個(gè)錯(cuò)

還好,問(wèn)題不大,找到

開始測(cè)試

成功的話:

否則:

然后去數(shù)據(jù)庫(kù)一看,郁悶,數(shù)據(jù)沒(méi)進(jìn)來(lái),試了N久,最后發(fā)現(xiàn)spring里要定義個(gè)dataSource。原來(lái)sessionFactory的定義變?yōu)槿缦拢?br />

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