<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Atea - Hero's Grave

    面向對象,開源,框架,敏捷,云計算,NoSQL,商業智能,編程思想。

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      40 隨筆 :: 0 文章 :: 28 評論 :: 0 Trackbacks
    筆者近期正在使用Struts2開發,在這里把個人心得小結一下。

    1.重復提交問題。
    使用<s:token />標簽。但這并不足夠。當一個submit需要花費大量時間的時候(例如CRUD),頁面會暫時無法轉向,這時如果狂點按鈕的話仍然可以進行重復提交。
    所以正確的作法應該是前后臺都要有所控制:
     • 使用<s:token />
     • 使用js控制:<form onsubmit="this.submit.disabled='true';">

    2.在web page中使用for循環的問題。
    <s:bean name="org.apache.struts2.util.Counter">           
      <s:param name="last" value="***" />
      <s:iterator>
        do sth..
     
    </s:iterator>
    </s:bean>                           
    這是一個很好用的bean,但要注意的是參數last一定要傳對。如果設錯了的話(比如空值),等待你的將是一個死循環..
    PS:其實,在視圖層應盡量避免使用循環等復雜邏輯,最好在后臺封裝好了拿上來直接顯示。

    3. 數據的頁面顯示問題。
    為保持用戶的輸入與頁面顯示的一致,可能要對空格等做特殊處理:
    str = str.replaceAll(" ","&nbsp;");
    然后使用標簽(注意escape):
    <s:property value="***" escape="false" />
    還有一種方法就是后臺不做任何轉換,把原始數據附給js在前臺轉換。具體哪種方法好就要細細權衡了。

    4.自定義interceptor的問題。
    Struts2默認每個Action都會自動調用defaultStack interceptor(def in struts-default.xml)。但如果你自定義了interceptor,defaultStack將不再被自動調用。
    想和頁面做交互的話最好還是加上它:
    <interceptor-stack name="Test_InterceptorStack">
      
    <interceptor-ref name="Test_Interceptor"/>
      
    <interceptor-ref name="defaultStack"/>
    </interceptor-stack>

    好了,就先到這里了。以后有新的話再補充:>
    posted on 2008-08-04 17:47 Atea 閱讀(3308) 評論(7)  編輯  收藏 所屬分類: Struts

    評論

    # re: Struts2使用小結 2008-08-05 09:04 YYX
    str = str.replaceAll(" ","&nbsp;");
    這個情況用replace()即可,這兩個方法容易望文生義,理解容易有偏差  回復  更多評論
      

    # re: Struts2使用小結 2008-08-05 10:58 123
    汗,果然是小節啊.
    相當的小.
    呵呵.  回復  更多評論
      

    # re: Struts2使用小結 2008-08-05 13:44 Happy漫步者
    呵呵 贊一個  回復  更多評論
      

    # re: Struts2使用小結 2008-08-05 16:46 Atea
    @YYX
    的確,應該用replace
    @123
    嗯,有些東西別人寫過了我就不寫啦:>
      回復  更多評論
      

    # re: Struts2使用小結[未登錄] 2008-08-05 23:57 alex
    str = str.replaceAll(" ","&nbsp;");
    這個情況用replace()即可
    ----------------
    不是吧replace 只對字串操作不對字串操作  回復  更多評論
      

    # re: Struts2使用小結 2008-09-01 21:05
    有什么學習struts2好的資料,推薦一下啊  回復  更多評論
      

    # re: Struts2使用小結[未登錄] 2008-09-04 08:32 Atea
    @豬
    官方文檔、各種blog;
    get_ready_for_struts2.chm,startingstruts2online.pdf,Struts 2 in Action.pdf.  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲人精品亚洲人成在线| 亚洲色婷婷综合久久| 亚洲影视自拍揄拍愉拍| 日本免费xxxx色视频| 亚洲视频国产视频| 久久WWW免费人成一看片| 91亚洲国产成人久久精品| 99久久久国产精品免费无卡顿| 亚洲美女视频免费| 亚洲一级免费视频| 波多野结衣亚洲一级| 女人18特级一级毛片免费视频| 亚洲砖码砖专无区2023| 好爽又高潮了毛片免费下载| 亚洲精品精华液一区二区| 国产免费人人看大香伊| 人与动性xxxxx免费| 国产AV无码专区亚洲AV毛网站| 91av免费观看| 国产精品99精品久久免费| 国产亚洲综合一区柠檬导航| 97青青草原国产免费观看| 国产成人精品日本亚洲专区6| 日本免费一区二区三区最新 | 亚洲男人天堂2022| 老司机永久免费网站在线观看| 日韩在线视频播放免费视频完整版 | 精品免费国产一区二区三区| 男女猛烈无遮掩视频免费软件| 亚洲精品无码不卡在线播HE| 久久精品国产免费观看三人同眠| 久久亚洲精品无码av| 浮力影院亚洲国产第一页| 99热精品在线免费观看| 亚洲av无码专区亚洲av不卡| 中文字幕在线亚洲精品| 成人免费福利视频| 一级毛片大全免费播放下载| 亚洲国产美女在线观看| 亚洲国产成人乱码精品女人久久久不卡| 一级毛片免费毛片一级毛片免费|