精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

初析Struts2中的Ajax開發實例

開發 后端
Ajax作為WEB開發中的明星,自有其性能和開發上的優勢。本文將給大家簡單介紹Struts2中的Ajax開發實例,希望對大家有所幫助。

  Web2.0的隨波逐流,Ajax那是大放異彩,Struts2框架自己整合了對Ajax的原生支持(struts 2.1.7+,之前的版本可以通過插件實現),框架的整合只是使得JSON的創建變得異常簡單,并且可以簡單的融入到Struts2框架中,當然這只是在我們需要JSON的時候才會顯得流光溢彩。

  首先不談Struts2的原生支持,我們自己寫一個ajax示例,使用異步請求,直接請求action動作:

  InfoAction.java

  1. packagecn.codeplus.action;importcom.opensymphony.xwork2.ActionSupport;  
  2. publicclassInfoAction extendsActionSupport {
  3. privatestaticfinallongserialVersionUID =1359090410097337654L;  
  4. publicString loadInfo() {returnSUCCESS;  
  5.   }  
  6.   } 

InfoAction僅僅是簡單的返回"success"。

  index.jsp

  1.   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
  2.   <html> 
  3.   <head>  <base href="<%=basePath%>"> 
  4.   <title>獲取</title> 
  5.   <script type="text/javascript"src="js/jquery.js"> 
  6.   </script> 
  7.   <script type="text/javascript"> 
  8.   functionloadInfo() {  
  9.   $("#info").load("loadInfo");  
  10.   }</script> 
  11.   </head> 
  12.   <body> 
  13.   <input type="button"value="獲取"id="btnGet"onclick="loadInfo()"/> 
  14.   <div id="info"></div> 
  15.   </body> 
  16.   </html> 

  index.jsp包含一個按鈕,點擊按鈕則會觸發異步請求事件。

  struts.xml

  1.   <package name="ajaxDemo"extends="struts-default"> 
  2.   <action name="loadInfo"class="cn.codeplus.action.InfoAction"method="loadInfo"> 
  3.   <result name="success">/info.jsp</result> 
  4.   </action> 
  5.   </package> 

  可見上面的異步請求的結果將會是加載info.jsp,info.jsp只是一個簡單網頁,不列出了。

  運行效果如下:

單擊獲取之后:

此時的頁面源代碼:

  <div>標簽中嵌套了<title>標簽,不符合規范,其實我們只要吧info.jsp寫的沒有<title>之類的標簽,就不會出現這種情況了。

  以上說的異步請求僅適用于請求單個文件,如果我們請求的是動態數據,并且數據需要以JSON格式返回,上面的方法將會顯得力不從心,這是struts2的原生支持就得出馬了。

  使用struts2的ajax,必須在項目中引入struts2-json-plugin-2.2.1.jar,在版本2.1.7+都一句綁定在struts2發行包里面了(之前的版本可以在這下載)。記住,要引入struts2-json-plugin-2.2.1.jar。

  這次我們使用另一個例子,模擬加載評論:

  dto對象,Comment.java

  1. packagecn.codeplus.po;  
  2. publicclassComment {  
  3. privatelongid;privateString nickname;
  4. privateString content;publiclonggetId() {returnid;  
  5.   }  
  6. publicvoidsetId(longid) {
  7. this.id =id;  
  8.   }  
  9. publicString getNickname() {returnnickname;  
  10.   }  
  11. publicvoidsetNickname(String nickname) {
  12. this.nickname =nickname;  
  13.  }  
  14. publicString getContent() {returncontent;  
  15.   }  
  16. publicvoidsetContent(String content) {
  17. this.content =content;  
  18.   }  
  19.   } 

  新的InfoAction.java 

  1. packagecn.codeplus.action;  
  2. importjava.util.ArrayList;importjava.util.List;  
  3. importcn.codeplus.po.Comment;  
  4. importcom.opensymphony.xwork2.ActionSupport;  
  5. publicclassInfoAction extendsActionSupport {  
  6. privatestaticfinallongserialVersionUID =1359090410097337654L;  
  7. privateList<Comment>comments =newArrayList<Comment>();//沒getter and setter方法的屬性不會被串行化到JSON  
  8.   @SuppressWarnings("unused")  
  9. privateString title;//!!!使用transient修飾的屬性也會被串行化到JSONprivatetransientString content;publicString loadInfo() {  
  10.   title="123木頭人";  
  11.   content="你是木頭人,哈哈。";  
  12.   loadComments();returnSUCCESS;  
  13.   }/*** 加載留言信息*/  
  14.   privatevoidloadComments() {  
  15.   Comment com1 =newComment();  
  16.   com1.setContent("很不錯嘛");  
  17.   com1.setId(1);  
  18.   com1.setNickname("納尼");  
  19.   Comment com2 =newComment();  
  20.   com2.setContent("喲西喲西");  
  21.   com2.setId(2);  
  22.   com2.setNickname("小強");  
  23.   comments.add(com1);  
  24.   comments.add(com2);  
  25.   }publicList<Comment>getComments() {returncomments;  
  26.   }publicvoidsetComments(List<Comment>comments) {this.comments =comments;  
  27.   }publicstaticlonggetSerialversionuid() {returnserialVersionUID;  
  28.   }publicString getContent() {returncontent;  
  29.   }publicvoidsetContent(String content) {this.content =content;  
  30.   }  
  31.   }  
  32.   index.jsp還是那個index.jsp。(*^__^*) 嘻嘻……  
  33.   struts.xml變化挺大:  
  34.   <package name="ajaxDemo"extends="json-default"> 
  35.   <action name="loadInfo"class="cn.codeplus.action.InfoAction"method="loadInfo"> 
  36.   <result name="success"type="json"></result> 
  37.   </action> 
  38.   </package> 

  在struts.xml中:

  首先,package extends由struts-default轉變為json-default,這是必須的,只用在json-default中才包含下面使用的result type為 json。

  然后就是result類型需顯示指明為json,result標簽內,無需指明視圖指向的界面。

  ***就是運行結果啦:

  點擊“獲取”按鈕之后:

  可見comments對象和content對象都被串行化到JSON數據了,不知道是不是版本的問題,很多資料都說使用transient修飾的屬性不會被串行化到JSON的。

  為了使content對象不被串行化到JSON,在不能舍棄其getter setter方法的時候,我們可以這樣在content的getter方法上面加上注解:@JSON(serialize=false)

  1.   ...  
  2.   @JSON(serialize=false)publicString getContent() {returncontent;  
  3.   }publicvoidsetContent(String content) {this.content =content;  
  4.   }  
  5.   ... 

  這時的結果如下:

  @JSON和json類型的result都還有很多可選項,無非就是串行化誰,不串行化誰,返回數據的MIME類型,讀者可以自行參考相關文檔。

  獲取到JSON數據了,下一步就是在前臺使用js處理JSON數據了,本人JS不精,喜歡使用jQuery解析,如有興趣,且聽下回分解jQuery解析JSON數據。

原文鏈接:http://www.cnblogs.com/codeplus/archive/2011/07/18/2109316.html

【編輯推薦】

  1. 理解JSON:3分鐘課程輕松搞定
  2. JSONP跨域原理和jQuery.getJSON用法
  3. 在PHP語言中使用JSON
  4. Jackson框架輕易轉換JSON
  5. Ajax和WEB服務數據格式:JSON JSONP
責任編輯:彭凡 來源: 博客園
相關推薦

2011-07-19 09:08:38

jQuery

2011-05-13 09:53:02

strutsAjax

2009-07-17 17:45:56

iBATIS Spri

2009-07-29 09:54:34

struts2和str

2017-07-11 09:42:22

漏洞

2009-06-05 10:43:29

struts2 checheckbox實例

2009-06-25 15:11:28

Struts2教程Struts2程序

2009-06-08 16:44:00

2012-05-10 14:00:06

StrutsjsonJava

2009-02-04 10:51:07

2009-06-04 09:20:19

struts2 if標使用

2009-07-14 17:10:44

struts2webwork

2009-06-01 15:44:18

2009-07-03 09:35:57

Struts2 JSP

2016-04-29 10:58:13

2009-06-04 08:34:24

Struts2配置struts.xml

2009-06-05 10:05:50

struts menustruts2

2009-06-18 11:37:24

Struts2中ForJavaScript

2011-04-28 09:52:04

Struts2

2010-05-10 15:06:37

Oracle stru
點贊
收藏

51CTO技術棧公眾號

国产精品一二三在线| 51漫画成人app入口| av激情成人网| 国精品一区二区| 欧美三级视频在线播放| 国产一区免费视频| 在线免费观看亚洲视频| 日本综合在线| 日韩精品免费专区| 日韩精品视频在线观看免费| 国内外成人激情免费视频| 天天综合久久综合| 免费av一区| 精品欧美激情精品一区| 电影午夜精品一区二区三区| 破处女黄色一级片| 欧美亚洲大陆| 午夜久久久影院| 国产精品国产精品国产专区蜜臀ah| 成人黄色短视频| 久久91超碰青草在哪里看| 国产三级一区二区| 日韩美女视频免费在线观看| 一出一进一爽一粗一大视频| 欧产日产国产精品视频| 99九九99九九九视频精品| 欧美极品少妇全裸体| 台湾佬美性中文| gogo在线高清视频| 国产一区二区看久久| 久久在线精品视频| 亚洲天堂av一区二区三区| 麻豆影视在线观看_| 激情av综合网| 欧美激情在线有限公司| 青青青视频在线播放| 国产成人免费| 亚洲欧美一区二区三区孕妇| 亚洲一区二区三区sesese| 免费三级在线观看| 美女精品视频在线| 亚洲一区二区三区中文字幕| 国产精品一级久久久| 在线观看色网站| 无需播放器亚洲| 日韩免费高清av| 国产黄页在线观看| 久青青在线观看视频国产| 人人爽香蕉精品| 另类视频在线观看| 国产一级久久久久毛片精品| 中文成人在线| 亚洲高清久久久| 麻豆91av| 亚洲无码久久久久| 日韩精彩视频在线观看| 人妖精品videosex性欧美| 人妻熟人中文字幕一区二区| 精品视频成人| 91精品国产色综合久久ai换脸| 国产精品国产亚洲精品看不卡| 黄网站在线观看| 国产在线国偷精品产拍免费yy| 国产精品日日摸夜夜添夜夜av| 久久久精品视频免费观看| 麻豆一区一区三区四区| 欧美午夜不卡视频| 高清无码一区二区在线观看吞精| 午夜视频在线免费播放| 久久精品国产久精国产爱| 久久久久亚洲精品国产| gv天堂gv无码男同在线观看| 精品日产免费二区日产免费二区| 欧美va在线播放| jizz欧美激情18| 国产盗摄精品一区二区酒店| 中文在线一区二区 | 超碰人人人人人人人| 成人在线电影在线观看视频| 精品国产一区二区三区久久久蜜月| 凹凸国产熟女精品视频| 9191在线播放| 中文字幕免费一区| 中文字幕乱码一区二区三区 | 亚洲国产精品小视频| 狠狠操精品视频| 色爱综合区网| 国产精品美女久久久久av爽李琼| 国产一区二区三区四区五区在线| 丰满熟女一区二区三区| 麻豆精品在线看| 91青草视频久久| 波多野结衣午夜| 毛片av一区二区| 成人动漫视频在线观看完整版| 国产一级片一区二区| 国产亚洲欧洲| 色综合五月天导航| 99热这里只有精品4| 久久av网址| 日韩视频免费中文字幕| 精品无码人妻一区二区免费蜜桃 | 综合视频免费看| 国产白丝在线观看| 色婷婷狠狠综合| 欧美不卡在线播放| 99久久婷婷国产综合精品首页| 欧美一区午夜精品| 三级黄色片网站| 婷婷激情综合| 欧美亚洲午夜视频在线观看| 日本三级网站在线观看| 欧美日韩国产高清| 超在线视频97| 亚洲欧美一区二区三区在线观看| 亚洲一区成人| 亚洲精品免费av| 精品视频二区| 亚洲v精品v日韩v欧美v专区| www.国产福利| 精品99re| 国产亚洲福利一区| 永久免费av无码网站性色av| 欧美日韩理论| 国产在线观看一区二区三区| 一区二区www| 国产在线精品视频| 日韩精品极品视频在线观看免费| wwwww在线观看免费视频| 国产蜜臀av在线一区二区三区| 欧美日韩精品久久| jzzjzzjzz亚洲成熟少妇| 亚洲成av人影院| 日韩不卡的av| 看全色黄大色大片免费久久久| 爱福利视频一区| 中国a一片一级一片| 久久久国产午夜精品| 日本一区二区三区精品视频| 欧美三级理伦电影| 日本高清不卡在线观看| 男女污污视频网站| 红桃成人av在线播放| 久久精品视频导航| 久久免费播放视频| 老鸭窝毛片一区二区三区| 国产精品久久久久久久美男| 日本一级在线观看| 国产精品九色蝌蚪自拍| 欧美日韩激情四射| 日韩高清一区| 亚洲小视频在线观看| 久久国产黄色片| 精品在线视频一区| 美女被啪啪一区二区| 激情视频网站在线播放色| 欧美色精品在线视频| 欧美黄色激情视频| 狠狠干综合网| 成人动漫视频在线观看免费| 成人福利影视| 日韩av在线播放资源| 日韩久久久久久久久| 99久久精品国产导航| 欧美日韩第二页| 亚洲精选av| 国产亚洲美女久久| 中文字幕第31页| 91在线观看污| 黄www在线观看| 国产亚洲一区二区三区不卡| 国产欧美日韩中文字幕| 在线黄色网页| 亚洲精品福利在线观看| 97人妻一区二区精品视频| 国产激情精品久久久第一区二区 | 97在线观看视频国产| 亚洲中文无码av在线| 国产精品成人免费精品自在线观看 | 日韩一级大片| 成人福利在线观看| 国产在线视频网站| 欧美人伦禁忌dvd放荡欲情| 丝袜美腿中文字幕| 欧美特黄视频| 欧美午夜视频在线| va天堂va亚洲va影视| 久久久久久久久久久国产| 久久国产精品高清一区二区三区| 欧美日韩情趣电影| 国产无精乱码一区二区三区| 韩国视频一区二区| 99色这里只有精品| 欧美日韩黄网站| 97av视频在线| 老牛影视av牛牛影视av| 色94色欧美sute亚洲线路二| 国产中文av在线| www.66久久| 欧美一级欧美一级| 精品国产一区二区三区噜噜噜 | 一级久久久久久| 亚洲最新视频在线播放| 中文字幕22页| 不卡在线一区二区| 成人午夜电影在线播放| jizz久久久久久| 2019亚洲日韩新视频| 成年人黄视频在线观看| 伊人久久五月天| 国产女主播喷水视频在线观看| 国产精品国产自产拍在线| 中文字幕a在线观看| 亚洲人体偷拍| 狠狠色狠狠色综合人人| 免费在线小视频| 久久精品国产久精国产思思| 青青青草原在线| 精品乱人伦小说| 国产一区二区三区成人| 色婷婷综合在线| 欧美成人aaaaⅴ片在线看| 成人欧美一区二区三区黑人麻豆| 欧美wwwwwww| 亚洲a在线视频| 懂色中文一区二区三区在线视频| 国产极品久久久久久久久波多结野| 久久男人av资源网站| 高潮毛片在线观看| 色老头一区二区三区| 性欧美8khd高清极品| 亚洲五码中文字幕| 亚洲女人久久久| 国产精品入口麻豆原神| 在线不卡av电影| 久久精品国产一区二区三| 国产男女无遮挡| 国产欧美高清| 免费看毛片的网址| 欧美久久综合网| 欧美精品v日韩精品v国产精品| 九九热hot精品视频在线播放| 91手机视频在线观看| 亚洲日本中文| 成人午夜激情网| 国产日韩在线观看视频| 91高清在线免费观看| 国产99re66在线视频| 久久久久久久国产精品视频| 免费在线看污片| 亚洲日本中文字幕| 国产激情视频在线播放| 欧美日韩在线看| 国产一级片毛片| 欧美午夜无遮挡| 91麻豆精品成人一区二区| 中文字幕一区在线观看视频| 女人18毛片毛片毛片毛片区二| 国产精品无遮挡| 日本中文字幕免费在线观看 | 亚洲精品在线观看av| 亚洲第一久久影院| 欧美一区二区激情视频| 亚洲国产精品国自产拍av| jizz中文字幕| 成人免费一区二区三区在线观看| 伊人在线视频观看| 亚洲福利视频一区| 精品人妻一区二区色欲产成人| 日本高清免费不卡视频| 国产精品久久久久久69| 欧美午夜电影在线| 无码人妻丰满熟妇区五十路 | 亚洲av永久纯肉无码精品动漫| 日韩欧美第一页| 成人黄色免费网| 日韩欧美久久久| 日产精品久久久久久久性色| 色综合影院在线| 视频在线这里都是精品| 欧美一性一乱一交一视频| 欧洲成人一区| 超碰97在线资源| 精品国产aⅴ| 91大学生片黄在线观看| 性感少妇一区| 国产96在线 | 亚洲| 首页亚洲欧美制服丝腿| 日本少妇高潮喷水视频| 全部av―极品视觉盛宴亚洲| 久久久福利影院| 91论坛在线播放| 欧洲一级黄色片| 国产精品久久久久一区| 黄色激情视频在线观看| 欧美日韩成人在线| 四虎免费在线观看| 亚洲国产精品久久| 黑人精品一区二区三区| 国产一区二区成人| 国产精品69xx| 成人av电影天堂| 亚洲丝袜美腿一区| 欧美极品一区二区| 欧美日韩国产欧| 亚洲欧美日韩三级| 久久综合资源网| 玖玖爱在线精品视频| 不卡的av电影在线观看| 日韩www视频| 综合色天天鬼久久鬼色| 中文字幕一区在线播放| 日韩精品一区二区三区视频播放| av资源网站在线观看| 91高清视频在线免费观看| 日韩有吗在线观看| 一区二区三区四区欧美日韩| 93在线视频精品免费观看| 亚洲一区尤物| 免费永久网站黄欧美| 国产高潮失禁喷水爽到抽搐 | gogo在线高清视频| 国产精品视频在线播放| 蜜臀av免费一区二区三区 | 奇米在线7777在线精品| 欧美高清性xxxx| 香蕉影视欧美成人| 亚洲不卡免费视频| 久久精品国产一区二区电影| 韩国精品主播一区二区在线观看| 国产精品欧美日韩一区二区| 欧美1区2区3区4区| 日韩精品在线中文字幕| 国产高清久久久| 青青青在线免费观看| 91精品国产91久久久久久一区二区| 在线免费看av| 欧美精品video| 日韩08精品| 男人j进女人j| 国产一区二区免费看| 日本黄色小说视频| 日韩一区二区精品葵司在线| 污视频在线免费| 海角国产乱辈乱精品视频| 在线视频亚洲欧美中文| 2022中文字幕| 国产91丝袜在线18| 国产精品密蕾丝袜| 色婷婷av一区二区| 韩国中文免费在线视频| 国产成人黄色av| 视频二区欧美| 免费观看亚洲视频| 成人教育av在线| 中文字幕亚洲精品一区| 亚洲欧美精品中文字幕在线| 在线播放蜜桃麻豆| 97超级碰碰| 成人激情电影在线| 久久国产激情视频| 亚洲天堂中文字幕| 亚洲精品国产精| 97精品免费视频| 国产探花一区二区| 日韩大片一区二区| 26uuu欧美日本| av毛片在线免费观看| 在线观看久久久久久| 粉嫩av国产一区二区三区| 亚洲小视频在线播放| av电影在线观看完整版一区二区| 欧美一区免费看| 日韩性xxxx爱| 国语一区二区三区| 日本一道在线观看| 成人动漫av在线| 蜜臀精品一区二区三区| 精品国产网站地址| 都市激情久久| 蜜臀视频一区二区三区| 亚洲乱码中文字幕| 中文字幕av第一页| xxxx欧美18另类的高清| 澳门精品久久国产| 欧美性受xxxx黑人猛交88| 水野朝阳av一区二区三区| а天堂中文在线资源| 亚洲成人黄色网址| 国产成人精品123区免费视频| 天天爱天天做天天操| 蜜桃视频在线观看一区| 亚洲理论片在线观看| 91精品国产综合久久久蜜臀图片| 91福利在线视频| ts人妖另类在线| 日韩av一区二| 日韩免费不卡视频| 69久久夜色精品国产69蝌蚪网| 第一av在线|