<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 Action里面的getter方法會在Action結束后被自動調用,例如有此情況:
    <package extends="struts-default">
    <action name="MyAction">
    <action name="AnotherAction" method="getSomething">
    ...
    在Action中
        public String execute(){
            System.out.println(
    "execute");
           
    return SUCCESS;
        }
        
    public String getA() {
            System.out.println(
    "getA");
            
    return SUCCESS;
        }
        
    public String geta() {
            System.out.println(
    "geta");
            
    return SUCCESS;
        }
        
    public String getaa() {
            System.out.println(
    "getaa");
            
    return SUCCESS;
        }
        
    public String getaA() {
            System.out.println(
    "getaA");
            
    return SUCCESS;
        }
        
    public String getB() {
            System.out.println(
    "getB");
            
    return SUCCESS;
        }
        
    public String gotA() {
            System.out.println(
    "gotA");
            
    return SUCCESS;
        }
    當調用MyAction的時候,輸出結果為:
    execute
    geta
    getaA
    getaa
    getB

    也就是說,即使你沒有調用AnotherAction,getSomething仍然會執行。

    ---------------------------------------------------------------------------

    090520更新

    這個問題確實很惱人,這兩天又被此事折騰的崩潰。
    再次提醒,在struts2的Action中慎起get打頭的函數!

    出錯的整個過程是這樣的(錯的花了..):
    在測試程序的過程中,發現后臺Hibernate不時的發生讀取臟數據的情況。
    為此專門編寫了測試文件進行測試,并沒有發現讀取臟數據的現象。眾所周知Session不是線程安全的,可系統是用ThreadLocal來管理Session的,按說不應該出現這個問題。
    我也曾懷疑過是sf緩存出的錯,可去掉緩存后還是有問題。

    在打開了Session創建和銷毀的Log后,發現程序在Action返回后,又創建了新的Session(沒有關閉)。
    注:系統在Action層對Service層做了IOC,在Service層對DAO層做了IOC。
    結果就是,Action結束時調用了getXXXService函數,而又神奇的調到了當前Service所有get打頭的函數。

    最后的解決辦法是,此處的IOC并不需要getter,把getter刪除就行了。
    posted on 2009-02-16 20:09 Atea 閱讀(388) 評論(0)  編輯  收藏 所屬分類: Struts

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


    網站導航:
     
    主站蜘蛛池模板: 99久久免费国产精品热| 日本媚薬痉挛在线观看免费| 亚欧色视频在线观看免费| 在线免费不卡视频| 久久91亚洲人成电影网站| 亚洲AV成人噜噜无码网站| 皇色在线免费视频| 色窝窝免费一区二区三区| 妞干网在线免费观看| 亚洲中文字幕无码中文字| 国产情侣久久久久aⅴ免费| 国产在线a不卡免费视频| 亚洲va在线va天堂va手机| 中国在线观看免费高清完整版 | 男女作爱在线播放免费网站| 日韩a级毛片免费视频| 亚洲av无码偷拍在线观看| 国产片AV片永久免费观看| 亚洲码国产精品高潮在线| 欧美亚洲精品一区二区| 亚洲成?v人片天堂网无码| 亚洲av无码专区在线电影天堂| 国产禁女女网站免费看| 久久性生大片免费观看性| 亚洲精品免费视频| 青青操免费在线视频| 久久久无码精品亚洲日韩京东传媒 | 成年女人免费碰碰视频| 亚洲成人一级电影| 37pao成人国产永久免费视频| 亚洲国产成人久久综合一| 免费能直接在线观看黄的视频| 亚洲熟妇自偷自拍另欧美| 在线精品亚洲一区二区小说| 日日狠狠久久偷偷色综合免费| 国产精品免费_区二区三区观看| 4hu四虎免费影院www| 亚洲一区爱区精品无码| 大学生一级毛片免费看| 一级做a爱过程免费视频高清| 亚洲精品无码永久在线观看|