国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

WebWork配置筆記

開發 后端
本文向您介紹WebWork配置的一些知識,包擴webwork運行流程、Ognl工作原理和chain視圖等

在標簽方面,WebWork配置這幾個標簽是有嚴格順序的,正確順序如下:

  1. 先〈result-types〉,必須有〈result-type/〉項;       
  2. 再〈interceptors〉,必須有〈interceptor/〉項;       
  3. 接下來是〈default-interceptor-ref   name="completeStack"〉  
  4. default-interceptor-ref〉;       
  5. 然后是〈global-results〉,必須有〈result/〉項;       
  6. 然后〈global-exception-mappings〉,    
  7. 子項如〈exception-mapping result="errorPage"     
  8. exception="java.lang.Exception"/〉       
  9. ***才是〈action/〉    

***才是

  1. action name="test" 〉     
  2. 〈interceptor-ref name="exception"/ 〉     
  3. 〈interceptor-ref name="basicStack"/ 〉     
  4. 〈exception-mapping exception="com.acme.  
  5. CustomException" result="custom_error"/ 〉     
  6. 〈result name="custom_error" 〉custom_error.ftlresult 〉     
  7. 〈result name="success" type="freemarker" 〉test.ftlresult 〉     
  8. action 〉     

webwork運行流程: 

默認執行execute()方法,該方法默認返回SUCCESS;

  1. 〈Script language="JavaScript" src="/js/pagenumber.js" 〉  
  2. 〈/Script 〉     
  3. 〈script Language="JavaScript" 〉     
  4. listNumUrl("courseInfoList.action?&pageNum=" 
  5. ,${pageNum},${allPageNum});     
  6. 〈/script 〉  

Ognl工作原理:

OgnlValueStack stack=new OgnlValueStack();  

stack.push(new User())://首先將打算賦值的對象壓入棧中  

stack.setValue("name","erica");//為棧頂對象User指定的屬性名name賦值  

HttpSession是一個接口,  

Properties實現了繼承了HashTable(實現了Map接口),也就是說它保存的也是值-鍵對象,它的setProperty("name","value")實質上就是保存到HashTable里了。

默認不是ajax

  1. action name="itemPersonalInput"   
  2. class="cn.com.s520.course.ItemPersonalInputAction"〉    
  3. 〈interceptor-ref name="fileUpload"〉    
  4. 〈param name="allowedTypes"〉    
  5. application/msword,image/gif,  
  6. image/jpeg,image/pjpeg,application/x-shockwave-flash     
  7. param〉    
  8. 〈param name="maximumSize">10485760param〉    
  9. interceptor-ref〉    
  10. 〈interceptor-ref name="basicStack"/〉    
  11. 〈result name="input" type="freemarker">  
  12. /course/ItemPersonalInput.ftlresult〉    
  13. 〈result name="error" type="freemarker">  
  14. course/ItemPersonalInput.ftlresult〉    
  15. 〈result name="success" type="redirect">  
  16. /itemPersonalList.actionresult〉    
  17. action〉  

private File images;

private String imagesContentType;  

private String imagesFileName;//得到不含路徑的文件名,如test.jpg 

  1. 〈result name="success" type="stream" 〉    
  2. 〈param name="contentType">image/jpegparam 〉    
  3. 〈param name="inputName">imageStreamparam 〉    
  4. 〈param name="  
  5. contentDisposition">filename="logo.png"param 〉    
  6. 〈param name="bufferSize">4096param 〉    
  7. result> 

1,〈param name="contentType">application/x-msdownloadparam 〉


contentType設成 application/x-msdownload 就可以。這樣瀏覽器會保證彈出一個下載文件的對話框。 


2,inputName 
這個比較重要,這個名字是輸入流的名稱, 以后要steam result的實現類中為根據OGNL的表達式去查找的。 

contentDisposition 這個是下載之后,保存在用戶端的文件名稱。

3,另外一個參數:contentLength就是下載文件的大小,webwork的stream result似乎實現有問題,不能根據文件的大小動態進行設置,只能寫死。 

這個WebWork配置參數的意義是告訴瀏覽下載的文件有多大,以便瀏覽器正確的顯示進度條。如果這個功能很重要的話,可以重新寫一個RESULT來實現。

  1. 〈result>/form.jspresult>如果不指明,默認為success     
  2. action name="userReg"   
  3. class="com.opensymphony.xwork.ActionSupport" 〉    
  4. 〈result name="input">/app/userreg.ftlresult 〉    
  5. 〈/action 〉  

這里將不會出現預期的頁面,因為默認為success,不會轉向我們指定的input頁面

  1. 〈result name="no-content" type="header"〉     
  2. 〈param name="status"〉204param〉     
  3. 〈param name="headers.customHeaderA"〉Aparam〉     
  4. 〈param name="headers.customHeaderB"〉Bparam〉     
  5. result〉  

chain視圖:  

同一個包里,可設置type為chain,對應action的擴展名也可以不寫,

  1. 〈result name="error" type="chain"〉     
  2. 〈param name="actionName"〉barparam〉     
  3. result〉     

不同包里

  1. 〈result name="errorPage" type="chain" 〉     
  2. 〈param name="namespace" 〉/param 〉     
  3. 〈param name="actionName" 〉barparam 〉     
  4. result 〉     

或者設置type為redirect,重定向過去

  1. action name="index" class="  
  2. com.opensymphony.xwork.ActionSupport"〉     
  3. 〈result name="success" type="redirect"〉  
  4. /course/courseInfoList.actionresult〉     
  5. action〉   

  1. default-interceptor-ref name="defaultStack"/〉   

這里只是在你沒有設置攔截器時才用到,如果WebWork配置攔截器了,就不會調用這個了。

【編輯推薦】

  1. WebWork框架原理與應用(1)
  2. 用WebWork注冊頁面建立過程
  3. WebWork注入Servlet方法詳解
  4. WebWork中返回INPUT的原因
  5. WebWork如何實現文件上傳配置過程
責任編輯:冰荷 來源: javaeye
相關推薦

2009-07-14 16:08:41

WebWork學習

2009-07-14 17:34:53

Webwork配置

2009-07-16 14:58:03

WebWork安裝WebWork配置

2009-07-09 16:22:12

WebWork配置

2009-07-09 15:55:18

WebWork配置文件

2009-07-16 17:42:47

WebWork配置

2009-07-14 17:53:11

WebWork安裝WebWork配置

2009-07-10 11:02:17

WebWork參數配置

2009-07-08 09:29:58

WebWork

2009-07-14 15:52:00

WebWork文件下載

2009-07-08 10:30:57

WebWork

2009-07-08 09:55:51

WebWork下載

2009-07-08 10:11:30

WebWork

2009-07-16 16:01:54

WebWork敏捷開發

2009-07-14 14:04:36

WebWork框架

2009-07-16 16:08:30

WebWork Act

2009-07-16 16:51:56

WebWork驗證機制

2009-07-14 14:41:33

Webwork與Spr

2009-07-16 16:27:26

Struts WebW

2009-07-10 11:07:00

WebWork注入Servlet方法
點贊
收藏

51CTO技術棧公眾號

国产在线视频网站| 米奇777超碰欧美日韩亚洲| 亚洲色图一区二区三区| 国产尤物一区二区| 欧洲杯半决赛直播| 日韩欧美资源站| 可以在线观看的av| 亚洲欧美日韩国产成人精品影院 | 91观看网站| 亚洲午夜免费| 亚洲天堂网中文字| 欧美精品一区免费| 亚洲电影二区| 亚洲精品成人av| 8x8x华人在线| 99视频一区| 粉嫩av四季av绯色av第一区| 人人狠狠综合久久亚洲婷婷| 欧美日韩不卡合集视频| 国产精品xxx| 日韩视频中文字幕| 欧美美女被草| 美女福利视频一区| 久久av网站| 亚洲国产精华液网站w| 九色自拍视频在线观看| 国产精品自拍三区| 精品久久久av| 欧美xxxx性| 久久九九热免费视频| 视频精品一区| 色www精品视频在线观看| 国产精品国色综合久久| 91成人看片| 国产欧美日韩视频一区二区三区| 日韩伦理av| 成人欧美亚洲| 国产精品老牛| 成人黄色午夜影院| 超碰在线观看免费| 2020日本在线视频中文字幕| 伊人一区二区三区| 91最新在线| 欧美日韩一区二区三区四区| 成在在线免费视频| 亚洲国产欧美日韩精品| 伊人久久综合一区二区| 欧美激情女人20p| 区一区二视频| 精品综合久久久| 91成人精品观看| 麻豆成人在线看| av在线女优影院| 欧美xxxxx牲另类人与| www.成人爱| 欧美在线免费观看| 亚洲午夜精品久久久久久app| 偷拍视频一区二区| 欧美绝顶高潮抽搐喷水合集| 亚洲尤物视频网| 国产综合久久久久影院| 成年人黄视频网站| 91精品国产欧美一区二区18| 国产美女视频一区二区| 欧美天堂亚洲电影院在线播放| 亚洲黄色一区二区三区| 国产高清亚洲一区| 国产美女视频黄a视频免费| 欧美撒尿777hd撒尿| 丝袜美腿一区| 成人国产精品色哟哟| 黄色精品一二区| 蜜芽视频在线观看| 日韩不卡中文字幕| 久久综合之合合综合久久| 无码人妻精品一区二区三区99v| 欧美色xxxx| 日韩专区中文字幕| 精品产国自在拍| 天堂资源在线亚洲视频| 国产亚洲精品aa| 性xxxxfjsxxxxx欧美| 国产精品扒开腿做爽爽爽视频| 5g国产欧美日韩视频| 激情综合色丁香一区二区| 国产午夜在线| 亚洲欧美日韩图片| 欧美色123| 亚洲一区二区三区视频| 成人性生交大合| www日韩tube| 欧洲成人午夜免费大片| 国产成人精品aa毛片| 这里只有精品66| 亚洲福利一二三区| 日本成人在线网站| 欧美一区二区三区四区在线观看地址| 最新中文字幕一区二区三区| 久草在线中文最新视频| 亚洲在线一区二区| 中文字幕亚洲精品在线观看 | 国产精品香蕉视屏| 亚洲四区在线观看| 日韩成人精品一区二区三区| 精品毛片久久久久久| 中文字幕在线免费不卡| 亚洲啊v在线| 亚洲第一精品福利| 亚洲成人日韩| 男人午夜天堂| 精品久久久999| 欧美色999| 91嫩草国产线观看亚洲一区二区| 国内精品久久久久影院 日本资源| 精品一区二区三区久久久| 欧美日韩精品免费观看| 亚洲一区二区三区视频在线 | 欧美一区二区三级| 综合五月婷婷| 毛片视频免费| 久久理论片午夜琪琪电影网| 成人午夜视频免费看| 中文一区一区三区高中清不卡免费| 国产一区在线观| 欧美主播一区二区三区美女| 欧州一区二区| 一二三四区精品视频| 国产精品嫩草99av在线| 国产精品中文在线| 999香蕉视频| 亚洲欧美在线一区二区| 日韩午夜免费| av在线二区| www.久久爱.cn| 懂色av影视一区二区三区| 日韩欧美字幕| 亚洲图片123| 日韩视频一区在线观看| 亚洲美女91| 免费黄网站在线播放| 欧美日韩综合网| 亚洲成人激情图| 国产精品主播直播| 国产一区二区三区精品在线观看| 欧美 日本 亚洲| 午夜精品一区二区三区视频免费看| 国产精品毛片久久| 日本精品国语自产拍在线观看| 欧美日本国产一区| 日本欧美在线| 久久久久久久久久久久久国产精品| www日韩欧美| 国产精品乱人伦一区二区| eeuss影院www在线观看| 国产高清一区视频| 日韩欧美资源站| 久久精品国产亚洲一区二区三区| 国产又爽又黄的激情精品视频| 精品久久久久久综合日本欧美| 天天综合日日夜夜精品| 日韩成人三级视频| 北条麻妃一区二区三区中文字幕| 洋洋av久久久久久久一区| 久久网站最新地址| av影院在线播放| 欧美亚洲高清一区| 精品无码久久久久久久动漫| 日韩一级片在线观看| 精品在线免费观看| 动漫一区二区三区| 午夜影院网站| 亚洲国内高清视频| 91在线视频播放地址| 成人动态视频| 少妇精品久久久久久久久久| 亚洲片在线资源| 日本一区二区免费在线观看视频| 日韩在线影视| 色的视频在线免费看| 日韩一级特黄毛片| 国产精品国产三级国产aⅴ浪潮| 欧美二区在线观看| 久久嫩草精品久久久精品| 91九色精品国产一区二区| 超碰99在线| 500福利第一精品导航| 亚洲人成在线电影| 亚洲欧美一区二区三区国产精品| 欧美午夜不卡| www一区二区三区| av在线播放免费| 一区二区三区免费播放| 亚洲图中文字幕| 日韩午夜激情| 精品一区二区三区亚洲| 9色在线视频| 亚洲国产精品免费视频| 一本色道久久综合亚洲精品不卡| 久久久久国产精品午夜一区| 中文字幕人成乱码在线观看 |