自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Struts+WebWork簡(jiǎn)單示例

開(kāi)發(fā) 后端
主要用個(gè)簡(jiǎn)單的例子來(lái)講解Struts-〉Webwork。

用Struts開(kāi)發(fā)都知道關(guān)于下載的Struts目錄下都apps目錄,這些都是例子,作為新手肯定把blank工程下的lib COPY 到自己工程的lib下。但初次接觸到Webwork的目錄,你也可能受到Struts目錄結(jié)構(gòu)的影響了。

直接找到(webwork2.2.4)lwebapps下,感覺(jué)目錄結(jié)構(gòu)比2.1.7要好很多(作為一個(gè)Struts人員來(lái)說(shuō)).發(fā)現(xiàn)了blank工程,到webapps下一看,怎么沒(méi)有l(wèi)ib。

打開(kāi)blank/.classpath 打開(kāi),看到了具體的lib包,發(fā)現(xiàn)了原來(lái)lib都在webworks/lib下。終于看到了一個(gè)default的目錄,一高興,全部拷貝到自己lib下,不要以為這樣就結(jié)束了。還要把webwork/下的webwork.jar拷貝到自己工程的lib下,具體原因?yàn)槭裁捶珠_(kāi),有興趣的還是去官方網(wǎng)站看看項(xiàng)目介紹把。

總結(jié):配置環(huán)境來(lái)說(shuō)不要以為是Struts老手就忽視察看Webwork文檔的環(huán)境搭配。往往這比較容易吃虧,當(dāng)自己做了一個(gè)小DEMO的時(shí)候才發(fā)現(xiàn),lib下竟然少包。。還是從文檔***頁(yè)慢慢來(lái)的好。

DEMO開(kāi)始

做小的Struts+WebWork德DEMO當(dāng)然要從輸入到輸出結(jié)果比較好了。具體功能如下:就是一個(gè)值從一個(gè)頁(yè)面?zhèn)鞯搅硪粋€(gè)頁(yè)面。

***步

老生常談的web.xml

xml 代碼

  1. ﹤filter﹥  
  2. ﹤filter-name﹥webwork﹤/filter-name﹥  
  3. ﹤filter-class﹥  
  4. com.opensymphony.webwork.dispatcher.FilterDispatcher  
  5. ﹤/filter-class﹥  
  6. ﹤/filter﹥  
  7. ﹤filter-mapping﹥  
  8. ﹤filter-name﹥webwork﹤/filter-name﹥  
  9. ﹤url-pattern﹥/*﹤/url-pattern﹥  
  10. ﹤/filter-mapping﹥  
  11. ﹤listener﹥  
  12. ﹤listener-class﹥  
  13. org.springframework.web.context.ContextLoaderListener  
  14. ﹤/listener-class﹥  
  15. ﹤/listener﹥ 

按照Struts思維,應(yīng)該配置一個(gè)Servlet,但是看到WEBWORK2.2.4是filter取代了Servlet。這個(gè)是因?yàn)橐С諥JAX,在2.1中還是Servelt。***的webwork ioc推薦的是spring 。所以Struts+WebWork中有了spring監(jiān)聽(tīng)器的配置。

第二步

index.jsp

java 代碼

憑著Struts經(jīng)驗(yàn)想迅速體驗(yàn)下WW的標(biāo)簽。

ActionForm。

Webwork是怎樣處理的呢,往下看。

第三步:

配置類(lèi)似于struts-config.xml的文件。終于在ww的例子中WEB-INF/classes/目錄下,找到了兩個(gè)配置文件webwork.property和xwork.xml。有兩個(gè)竟然。還是先看看xwork.xml把。一看如下:

xml 代碼

  1. ﹤xwork﹥     
  2. ﹤include file="webwork-default.xml"/﹥     
  3. ﹤package name="default" extends="webwork-default"﹥     
  4. default-action-ref name="home" /﹥     
  5. action name="home"   
  6. class="com.opensymphony.webwork.example.HomeAction"﹥     
  7. ﹤result﹥/WEB-INF/pages/home.jspresult﹥     
  8. action﹥     
  9. ﹤/package﹥     
  10. ﹤/xwork﹥     

其實(shí)作為Struts+WebWork簡(jiǎn)單例子可以只要考慮的配置就好,和STRUTS怎么說(shuō)也差不多(其實(shí)差的也不少了)但是這個(gè)name并不是Struts里的ActionForm。WW根本沒(méi)有那個(gè)東西,這也是優(yōu)勢(shì)。這個(gè)name相當(dāng)于struts里action標(biāo)簽里的path屬性 class相當(dāng)于type了,但是注意WW的name 是不能有/。。。但是如果Struts少了的話(huà),就是致命的了。看來(lái)result和forward基本也一樣了。

根據(jù)自己的程序xwork.xml如下:

xml 代碼

  1. action name="test" class="  
  2. com.yuanfeng.web.action.Testaction"﹥     
  3. ﹤result name="success"﹥/WEB-INF/pages/result.jsp   
  4. ﹤/result﹥     
  5. action﹥﹤/action﹥  

要放到web-inf/classes下,其實(shí)就是必須放在classpath下。第四步:

來(lái)看看Testaction這個(gè)類(lèi)

java 代碼

  1. public class Testaction extends ActionSupport{  
  2. UserInfo userInfo;  
  3. public String execute() throws Exception {   
  4. System.out.println("UserInfo = "+userInfo.getUsername());  
  5. Map session = ActionContext.getContext().getSession();  
  6. session.put("user", userInfo);  
  7. return SUCCESS;  
  8. }  
  9. public UserInfo getUserInfo() {  
  10. return userInfo;  
  11. }  
  12. public void setUserInfo(UserInfo userInfo) {  
  13. this.userInfo = userInfo;  
  14. }  

UserInfo它其實(shí)就是包含用戶(hù)信息的一個(gè)set/get方法的類(lèi),并沒(méi)有像ActionForm依賴(lài)Struts。

這樣處理的好處還是很多的。起碼不用兩個(gè)類(lèi)似的對(duì)象互相轉(zhuǎn)換了(bean To Form or From To bean)。

再看看execute方法。

OH YEAR終于沒(méi)有那惡心的四大參數(shù)了,但怎么獲取這些參數(shù)呢。

通過(guò)ActionContext類(lèi)來(lái)獲得。

PS:如果你少lib/下少包,現(xiàn)在倒入會(huì)有災(zāi)難性后果,classes被clear,你的配置文件都消失了。!

郁悶吧。還是把它們放到src下保險(xiǎn),Struts+WebWork簡(jiǎn)單Demo運(yùn)行成功,得到了username。

【編輯推薦】

  1. WebWork框架原理與應(yīng)用(1)
  2. 用WebWork注冊(cè)頁(yè)面建立過(guò)程
  3. WebWork注入Servlet方法詳解
  4. 淺析Webwork與Spring整合
  5. WebWork文件上傳實(shí)現(xiàn)淺析
責(zé)任編輯:冰荷 來(lái)源: javaeye
相關(guān)推薦

2009-07-14 14:04:36

WebWork框架

2009-07-20 14:23:36

Struts與WebW

2009-07-09 16:22:12

WebWork配置

2009-07-14 17:10:44

struts2webwork

2009-07-16 15:14:27

WebWork用戶(hù)登陸

2011-06-28 09:14:23

Struts 2WebWork

2011-06-28 09:56:49

JavaStruts2Webwork

2009-07-14 12:47:07

WebWork工作方式

2009-06-24 17:43:24

Struts和JSF

2009-07-16 14:08:14

webwork配置

2009-07-14 16:08:41

WebWork學(xué)習(xí)

2009-07-14 17:34:53

Webwork配置

2009-07-14 15:52:00

WebWork文件下載

2009-07-20 13:48:58

Struts2.1.6

2009-07-08 10:30:57

WebWork

2009-07-16 16:01:54

WebWork敏捷開(kāi)發(fā)

2009-07-08 09:55:51

WebWork下載

2009-07-08 10:11:30

WebWork

2009-07-16 16:08:30

WebWork Act

2009-07-16 16:51:56

WebWork驗(yàn)證機(jī)制
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)