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

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

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

    blogjava's web log

    blogjava's web log
    ...

    JpetStore學習struts新的開發模式

    ?

    今天研究了一下JpetStore源代碼 ,發現它的開發strust模式和我們以往開發的模式完全不同,所有的strust類都繼承org.apache.struts.beanaction.BaseBean

    仔細研究BeanAction類,發現它其實是一個通用類,利用反射原理,根據URL來決定調用formbean的哪個方法!

    一個簡單的例子

    package ?strutstest.action;
    // 繼承BaseBean
    import ?org.apache.struts.beanaction.BaseBean;

    public ? class ?TestBean? extends ?BaseBean? {
    ????
    ????
    public ? static ? final ?String?SUCCESS? = ? " success " ;
    ????
    public ? static ? final ?String?FAILURE? = ? " failure " ;
    ????
    public ?TestBean()? {
    ????}

    ????
    private ?String?id;
    ????
    private ? int ?age;
    ????
    private ?String?name;
    ????
    private ?String?address;
    ????
    // getter?setter
    // 定義幾個業務方法
    ???? public ?String?saveUser()
    ??????
    {
    ??????????System.out.print(
    " 添加用戶.. " );
    ??????????
    // 這里返回一個字符串,將自動導向成功頁
    ??????????
    // 對應的是 forward 的名稱
    ?????????? return ?SUCCESS;
    ??????}

    ??????
    public ?String?updateUser()
    ??????
    {
    ??????????System.out.print(
    " update?user.. " );
    ?????????
    ??????????
    return ?SUCCESS;
    ??????}

    ??????
    public ?String?getUser()
    ??????
    {
    ??????????
    if (id == null )
    ??????????
    {
    ?????????????System.out.print(
    " 沒有此用戶 " );
    ?????????????
    // 導向失敗
    ?????????????retutn?FAILURE;?
    ???????????}

    ??????????
    ??????????System.out.print(
    " 用戶id= " + id);
    ??????????
    return ?SUCCESS;
    ??????}


    strust-config.xml配置文件

    <struts-config>
    ??
    <form-beans>
    ????
    <form-bean?name="testBean"?type="strutstest.action.TestBean"?/>
    ??
    </form-beans>
    ??
    <action-mappings>
    ????
    <action?name="testBean"?path="/test/saveUser"?type="org.apache.struts.beanaction.BeanAction">
    ??????
    <forward?name="success"?path="/success.html"?/>
    ????
    </action>
    ????
    <action?name="testBean"?parameter="*"?path="/test/index"?type="org.apache.struts.beanaction.BeanAction"?validate="false">
    ??????
    <forward?name="success"?path="/user.jsp"?/>
    ????
    </action>
    ????
    <action?name="testBean"?path="/test/updateUser"?type="org.apache.struts.beanaction.BeanAction">
    ??????
    <forward?name="success"?path="/success.html"?/>
    ????
    </action>
    ????
    <action??name="testBean"?path="/test/getUser"?type="org.apache.struts.beanaction.BeanAction"?>
    ?????????
    <forward?name="success"?path="/success.html"?/>
    ????
    </action>
    ??
    </action-mappings>


    說明|:

    Struts-config.xml的配置里有3種映射方式,來告訴BeanAction把控制轉到哪個form bean對象的哪個方法來處理。


    <action name="testBean" path="/test/saveUser" type="org.apache.struts.beanaction.BeanAction">
    ????? <forward name="success" path="/success.html" />
    ??? </action>


    此種方式表示,控制將被轉發到"testBean"這個form bean對象 的"savaUser"方法(行為)來處理。方法名取"path"參數的以"/"分隔的最后一部分。
    parameter="*"

    此種方式表示,form bean上沒有任何方法被調用。如果存在"name"屬性,則struts把表單參數等數據填充到form bean對象后,把控制轉發到"success"。否則,如果name為空,則直接轉發控制到"success"。這就相當于struts內置的org.apache.struts.actions.ForwardAction的功能

    前臺調用

    <html:link?page="/test/saveUser.do">
    saveUser
    </html:link>
    <html:link?page="/test/getUser.do?id=22">
    getUser
    </html:link>
    <html:link?page="/test/updateUser.do">
    UpdateUser
    </html:link>
    </body>
    </html:html>



    參考

    http://blog.csdn.net/yanwp/archive/2006/01/13/578379.aspx

    posted on 2006-05-30 00:09 record java and net 閱讀(837) 評論(3)  編輯  收藏 所屬分類: struts

    評論

    # re: JpetStore學習struts新的開發模式 2006-05-30 12:18 老鼠

    :):)

    您這篇文章我也要了:p

    轉ITPUB論壇去:P

    您要是不愿意,要跟我說一聲哦:P  回復  更多評論   

    # re: JpetStore學習struts新的開發模式 2006-05-30 17:25 吳某人-不斷地學習

    同道中人..

      回復  更多評論   

    # re: JpetStore學習struts新的開發模式 2007-03-17 16:00 阿壽

    這篇文章我看了,對我有用,謝謝你啦.  回復  更多評論   


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


    網站導航:
     

    導航

    常用鏈接

    留言簿(44)

    新聞檔案

    2.動態語言

    3.工具箱

    9.文檔教程

    友情鏈接

    搜索

    最新評論

    主站蜘蛛池模板: 亚洲五月综合缴情在线观看| 波多野结衣视频在线免费观看| 亚洲人成中文字幕在线观看| 免费中文字幕视频| 国产免费牲交视频| 免费人成又黄又爽的视频在线电影| 高清在线亚洲精品国产二区| 午夜亚洲国产理论片二级港台二级| 啦啦啦中文在线观看电视剧免费版 | 一个人免费观看视频www| 97se亚洲综合在线| 100000免费啪啪18免进| 91亚洲自偷在线观看国产馆| 无码国产精品一区二区免费I6| 香蕉大伊亚洲人在线观看| 国产成人无码a区在线观看视频免费 | 120秒男女动态视频免费| 亚洲成人免费网站| 成年女人午夜毛片免费视频 | 亚洲天堂男人影院| 免费爱爱的视频太爽了| 全黄A免费一级毛片| 亚洲人成人无码网www电影首页| 国产一级高青免费| 亚洲尹人香蕉网在线视颅| 成人免费视频77777| 国产av无码专区亚洲av毛片搜 | 99re6热视频精品免费观看| 国产亚洲福利一区二区免费看| 亚洲视频在线播放| 亚洲一区免费在线观看| 亚洲乱亚洲乱妇无码| 免费人成年激情视频在线观看 | 亚洲人成人一区二区三区| 色片在线免费观看| 国产亚洲视频在线| 久久精品国产精品亚洲色婷婷| 最近最新MV在线观看免费高清| 美女黄网站人色视频免费| 亚洲成色www久久网站夜月| 曰批全过程免费视频在线观看|