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

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

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

    狂淘

    www.kuangtao.net

       :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      6 隨筆 :: 185 文章 :: 68 評(píng)論 :: 0 Trackbacks
    1:輸出action中屬性值,在jsp頁(yè)面中顯示用:<s:property  value="屬性名" />
    2:在頁(yè)面中實(shí)現(xiàn)自動(dòng)增加的序號(hào)用iterator的statuts的index屬性 eg:
    <s:iterator value="#request.inOutAccountList" id="data" status="listStat">
    <s:property value="#listStat.index+1"/>
    <!—輸出當(dāng)前迭代元素的索引?
    <s:property value="#listStat.index"/>
    <!—輸出當(dāng)前迭代了幾個(gè)元素?
    <s:property value="#listStat.count"/>
    <!—返回當(dāng)前迭代元素的索引是否為奇數(shù)?
    <s:property value="#listStat.odd"/>
    <!—返回當(dāng)前迭代元素的索引是否為偶數(shù)?
    <s:property value="#listStat.event"/>
    <!—返回當(dāng)前元素是否為第一個(gè)元素?
    <s:property value="#listStat.first"/>
    <!—返回當(dāng)前元素是否為最后一個(gè)元素?
    <s:property value="#listStat.last"/>
    </s:iterator>
    3:在action類中取得request和session對(duì)象的方法
    Map session  = ActionContext.getContext().getSession();
    HttpServletRequest  request = ServletActionContext.getRequest ();
    設(shè)置它們的值的方法:
    session.put("operation", "add");
    request.setAttribute("name", name);
    頁(yè)面中取得它們的值:
    <s:property value="#session.operation"/>
    <s:property value="#session[‘operation’]"/>
    ${sessionScope.TEST} == ${session.TEST}
    <s:if test="#session.operation =='add'">
    <s:if test="#session[‘operation’]=='add'">
    <s:if test="#session[‘operation’]==null">

    <s:property value="#request.name"/>
    ${requestScope.name} == ${request.name}
    4:頁(yè)面中奇偶行樣式不一樣的控制方法:
    <tr class="<s:if test='#listStat.odd==true'>tableStyle-tr1</s:if><s:else>tableStyle-tr2</s:else>" >
    5:單選框和復(fù)選框的使用方法
    1):可以設(shè)置默認(rèn)選中值,注意list的值的設(shè)置,通過這種方式使key和value不一樣,這種方法比較常用(checkboxlist or radio)
    <s:radio name="uncarInsPolicy.policyStateCode"
    list="#{'5':'通過' , '2':'不通過'}" listKey="key" listValue="value" value='5' />
    2):這里的key和value的值是一樣的(checkboxlist or radio)
    <s:checkboxlist list="{'Red', 'Blue', 'Green'}" name="favoriteColor"/>
    6:struts2 中的標(biāo)簽會(huì)生成類似由<tr><td></td></tr>構(gòu)成的字串(具體什么標(biāo)簽生成什么,可以查 看生成后的頁(yè)面的源代碼)如果不限制這些多余代碼的生成,頁(yè)面將變得無法控制,所以一般我們是不希望它生成多余的代碼的,具體的設(shè)置方法如果,在 struts.xml中統(tǒng)一配置
    <constant name="struts.ui.theme" value="simple"/>加上該句即可
    也可以通過在頁(yè)面中將tag的theme屬性設(shè)為"simple"取消其默認(rèn)的表格布局
    不過最好是:自定義一個(gè)theme,并將其設(shè)為默認(rèn)應(yīng)用到整個(gè)站點(diǎn),如此一來就可以得到統(tǒng)一的站點(diǎn)風(fēng)格
    7:jsp頁(yè)面中格式化日期的方法
    <s:date name="unCarInsModificationInfo.createTime" format="yyyy-MM-dd" nice="false"/>這樣就可以將日期格式化為yyyy-MM-dd的形式
    8:默認(rèn)情況下,當(dāng)請(qǐng)求action發(fā)生時(shí),Struts運(yùn)行時(shí)(Runtime)根據(jù)struts.xml里的Action映射集(Mapping),實(shí)例化action對(duì)應(yīng)的類,并調(diào)用其execute方法。當(dāng)然,我們可以通過以下兩種方法改變這種默認(rèn)調(diào)用
    1)在classes/sturts.xml中新建Action,并指明其調(diào)用的方法
    比如想調(diào)用action類中的
    public String aliasAction() {
        message ="自定義Action調(diào)用方法";
        return SUCCESS;
    }
    則在classes/sturts.xml中加入下面代碼:
    <action name="AliasHelloWorld" class="tutorial.HelloWorld"method="aliasAction">
       <result>/HelloWorld.jsp</result>
    </action>
    既可用action名調(diào)用該方法了
    2)(比較常用)
    訪問Action時(shí),在Action名后加上“!xxx”(xxx為方法名)。
    9:Struts 2.0有兩個(gè)配置文件,struts.xml和struts.properties都是放在WEB-INF/classes/下。
    struts.xml用于應(yīng)用程序相關(guān)的配置
    struts.properties用于Struts 2.0的運(yùn)行時(shí)(Runtime)的配置
    10:在action類中取得web下某一文件夾物理路徑(絕對(duì)路徑)的方法
    filePath = ServletActionContext.getServletContext().getRealPath("/upLoadFiles")
    11:要想返回的頁(yè)面不是一個(gè)直接JSP頁(yè)面而是要先通過返回action中的方法讀取相應(yīng)的數(shù)據(jù)再返回到j(luò)sp頁(yè)面,有兩種方法
    1)在struts.xml中這么設(shè)置
    <result name="list" type="redirect-action">sysmanage/UserBaseInfoAction!findUserBaseInfo.action</result>
    2)在action中返回時(shí)直接調(diào)用這個(gè)方法即可
    return findList();
    12:設(shè)置checkboxlist中默認(rèn)值的方法
    <s:checkboxlist name="skills1"="Skills 1" list="{ 'Java', '.Net', 'RoR', 'PHP' }" value="{ 'Java', '.Net' }" />
    <s:checkboxlist name="skills2"
        label="Skills 2" list="#{ 1:'Java', 2: '.Net', 3: 'RoR', 4: 'PHP' }" listKey="key" listValue="value" value="{ 1, 2, 3 }"/>
    13:二級(jí)級(jí)連下拉框
    <s:set name="foobar"
       value="#{'Java': {'Spring', 'Hibernate', 'Struts 2'}, '.Net': {'Linq', ' ASP.NET 2.0'}, 'Database': {'Oracle', 'SQL Server', 'DB2', 'MySQL'}}" />
    <s:doubleselect list="#foobar.keySet()" doubleName="technology" doubleList="#foobar[top]" label="Technology" />
    14:在頁(yè)面中取出list對(duì)象中的屬性值
    <s:if test="list!=null&&list.size()>0">
    <s:iterator value="list" status=”stat”>
    <!—如果list中存儲(chǔ)形式為select id,name,title-- >
    <s:property value="list[#stat.index][0]" />
    <!—如果list中存儲(chǔ)多對(duì)象如left join Role left join Group-- >
    <s:property value="list[#stat.index][0].title" />
    <s:property value="list[#stat.index][1].title" />
    <!—如果為Map形式存儲(chǔ)-- >
    <s:iterator value="mapUsers.keySet()" id="id">
       <s:property value="#id"/>
       <s:iterator value="mapUsers.get(#id)">
       <s:property value="nickname"/>||<s:property value="UName"/>
       </s:iterator>
    </s:iterator>
    <!—判斷是否為奇數(shù)-- >
    <s:if test="stat.odd == true"></s:if>
    <!—判斷是否為第一條數(shù)據(jù)-- >
    <s:if test="#stat.index==0">
    <s:if test="#stat.first">
    <!—判斷屬性是否為null-- >
    <s:if test="list[#stat.index][0].title ==null”>
    <!—將屬性值聲明為變量-- >
    <s:set name="title" value="list[#stat.index][0].title " ></s:set>
    <!—判斷屬性值-- >
    <s:if test="list[#stat.index][0].title ==4">
    <s:if test="list[#stat.index][0].title ==’admin’">
    <s:if test="#title ==4">
    <s:if test="list[#stat.index][0].title.length()>15">
    <s:property value="list[#stat.index][0].title.substring(0,15)" />...
    </s:if>


    14:獲取select值
    <s:select list="listDept" name="selectDept" listKey="val" listValue="prntext" disabled = "true" value="deptSelected" />

    <s:hidden name="selectDept" value="%{deptSelected}"/>

    15:循環(huán)指定int型數(shù)據(jù)
    其中first屬性指定循環(huán)起始值,last指定循環(huán)終止值,其它相關(guān)屬性可以查看org.apache.struts2.util.Counter類源碼。在下面迭代器中輸入循環(huán)的當(dāng)前值,即:current
    <s:bean name="org.apache.struts2.util.Counter">
    <s:param name="first" value="1" />
    <s:param name="last" value="pages" /><!—pages page為action中屬性?
    <s:iterator>
    <s:if test="current-1==page">
    <font color="red"><s:property /></font>
    </s:if>
    <s:else>
    [<s:property />]
    </s:else>
    </s:iterator>
    </s:bean>

    16:輸出國(guó)際化文件中的值
    <s:text name=”key”>
    ${getText[“key”]}
    17:輸出Action中的消息
    <s:actionmessage />
    18:輸出Action中的錯(cuò)誤
    <s:actionerror />
    posted on 2009-10-12 09:37 狂淘 閱讀(159) 評(píng)論(0)  編輯  收藏 所屬分類: struts2.0 spring hiberate
    主站蜘蛛池模板: 亚洲乱码日产精品BD在线观看| 亚洲中文字幕无码av永久| 999国内精品永久免费视频| 亚洲最大天堂无码精品区| 日韩亚洲变态另类中文| 2020因为爱你带字幕免费观看全集 | 亚洲?V乱码久久精品蜜桃| 免费高清国产视频| 亚洲欧美日韩国产精品一区| 国产午夜亚洲不卡| 在线观看免费人成视频色9| 国产vA免费精品高清在线观看| 亚洲综合久久久久久中文字幕| 国产嫩草影院精品免费网址| 国产精品免费高清在线观看| 亚洲av无码专区在线观看下载| 亚洲精品狼友在线播放| 免费观看美女裸体网站| 国产在线精品免费aaa片| 亚洲国产欧美国产综合一区 | 一边摸一边爽一边叫床免费视频 | 亚洲国产精品一区第二页 | 国产免费av片在线无码免费看| 久久久久免费精品国产| 国产精品亚洲五月天高清| 亚洲精彩视频在线观看| 国产成人综合亚洲AV第一页 | 欧洲亚洲国产清在高| 日本免费高清一本视频| 中国人xxxxx69免费视频| xvideos永久免费入口| 亚洲偷自拍另类图片二区| 亚洲av无码潮喷在线观看 | 亚洲精品无码日韩国产不卡av| 亚洲成AV人片在线播放无码| 亚洲成av人片一区二区三区| 免费三级毛片电影片| 国产成人久久AV免费| 一个人看的免费高清视频日本| 亚洲欧美国产国产一区二区三区 | 性感美女视频在线观看免费精品 |