我首先升級(jí)了spring2.0,因?yàn)?/span>spring2.0是向下兼容的,所以也只是將spring1.2.8的包換成了spring2.0.3的包。雖然spring2.0是向下兼容,但他需要的其他包也跟著需要變換。例如如果你程序包括acegi的話,就需要將以前的echache1.1或者1.2換成spring2.0.3中帶著的echache1.2.4。不然就會(huì)在啟動(dòng)tomcat的時(shí)候報(bào)錯(cuò),說(shuō)找不到echache這個(gè)類。
Struts2.0跟struts1.x完全不同,首先需要把struts1.x的東西都刪除掉。
1、
lib包中的struts1.x,以及他那幾個(gè)commons包都可以刪除,不過(guò)要看你其他的程序是否調(diào)用了這些commons包。
2、
formbean可以刪除了,因?yàn)槟愫笈_(tái)有個(gè)pojo類。
3、
validation框架可以除去了
4、
資源包也可以刪除了
5、
Action和頁(yè)面先留著,主要是看你的業(yè)務(wù)邏輯。如果業(yè)務(wù)邏輯簡(jiǎn)單也可以刪除了。
接著添加struts2.0需要的包
freemarker-2.3.8.jar,ognl-2.6.11.jar,struts2-core-2.0.6.jar,xwork-2.0.1.jar,struts2-spring-plugin-2.0.6.jar 。需要注意的是struts2-core-2.0.6.jar和struts2-all-2.0.6.jar不能同時(shí)添加到lib包中。
因?yàn)?/span>struts2.0對(duì)于1.x來(lái)說(shuō)是全新的技術(shù),我不可能都面面具到的提及,只能說(shuō)說(shuō)自己的體會(huì)。
需要對(duì)struts2.0有個(gè)更全面的了解,可以參考Max On Java的博客。
另外webwork2.2的官方文檔也是很好的學(xué)習(xí)資料。
接著談?wù)勎业捏w會(huì):
1、
Strust2.0的action是個(gè)javabean(不知道這樣定義準(zhǔn)不準(zhǔn)確)。可以有自己的方法,你可以繼承ActionSupport,也可以不繼承。可以簡(jiǎn)單的理解為將struts1.x的action和formbean結(jié)合成一個(gè)類了。
2、
頁(yè)面的參數(shù)可以不用request傳遞了,你只需要在action定義了這個(gè)屬性,然后set一下就可以傳遞到頁(yè)面上去了。
3、
因?yàn)轫?yè)面屬性都可以定義在action中,在編寫代碼過(guò)程中,對(duì)于struts1.x的程序員來(lái)說(shuō)比較不適應(yīng),感覺(jué)action顯得亂糟糟的。不過(guò)適應(yīng)了就會(huì)覺(jué)得他的優(yōu)點(diǎn)急好處的。我感覺(jué)分頁(yè)更加簡(jiǎn)單了。
4、
以前一直都需要在action中將form中的內(nèi)容放到pojo中去,因此有些業(yè)務(wù)也需要在action中完成。導(dǎo)致真正的業(yè)務(wù)層做的事情跟dao層差不多。現(xiàn)在struts2.0就可以更可能的把業(yè)務(wù)都放在業(yè)務(wù)層,這樣也便于業(yè)務(wù)的管理。
5、
Struts2.0支持的技術(shù)很多,現(xiàn)在我用到的還是他的CRUD的一部分內(nèi)容。他還支持ajax樹形,支持jassper,支持jfreechar,還支持struts1.x。這些都需要在以后的工作學(xué)習(xí)中去掌握
先說(shuō)到這里吧。
這里有示例代碼
相關(guān)信息:
項(xiàng)目架構(gòu)以及數(shù)據(jù)庫(kù)信息
struts+spring+hibernate的web應(yīng)用<一> 架構(gòu)搭建
更多信息
posted on 2007-04-20 10:52
千山鳥飛絕 閱讀(3711)
評(píng)論(2) 編輯 收藏