posts - 325,  comments - 25,  trackbacks - 0
           

          .Action中有一個static 方法,可以直接在頁面中調用,通過@包名。類名@方法名

                 獲取public static final 屬性名一樣

                 <s:property value=”@com.test.ognl.LoginAction@get()”/>

          .Action中所有屬性都會放在ValueStack中,可以不用任何符號直接訪問

                 <s:property value=”Action中屬性名”/>

          .如果屬性為一個bean對象,可以在頁面中直接訪問bean的屬性和方法

          4.ValueStack:每一個Action(包含屬性和方法)實例對象中都會擁有一個ValueStack對象;與Action的生命周期相同,在內存中的位置與parameters,reqeust,session.application 一樣,只是ValueStack不用使#獲取對象.一次請求(如Action(chain)共享一個值棧,ation都在valueStack中,也可直接往ValueStack中放一個對象

          ActionContext.getContext().getValueStack().put(Obj)

          .獲取數組和List(為Action中一個屬性)中某一個值:

          <s:property value=”list[0]”/>

          6.獲取Set(Action中一個屬性):

          Set testSet = new HashSet();//Set中元素是沒有順序的,所以不能用下標取

          <s:property value=”testSet”/>

          7.獲取MapAction中的一個屬性):

          Map map = new HashMap();

          獲取所有:<s:property value=”map”/>

          獲取某一個值:<s:property value=”map[‘m1’]”/>

          8.集合類中都有一些偽屬性:

          如:Map,List,Set 中有的size, isEmpty

                List 中獨有的 iterator 能夠返回一個迭代器

               ap 中獲取所有的鍵,所有的值: keys ,values

               Iteratornext ,hasNext

               Enumeration

          9.JDK中類默認已經重寫了toString()方法,而我們自定義的類中如果不重寫這個方法,只能調用Object中的toString()方法,打印出getClass().getName() + '@' + Integer.toHexString(hashCode()),如下:com.test.vo.Student@00fcb
          如果不想這么顯示,則需要在Student類中得寫toString()方法:
          Public String toString(){ return “aaa”;}
          10.我們利用toString()方法可以打印出所有對象,但有時候我們不想獲取所有屬性,只獲取List中對象的部分屬性,可以利用投影技術實現:
          如下 獲取userName屬性值(即:從大集合中得到一個小集合):
          <s:property value=”student.{userName}”/>

          如果再想取出投影中某一個值:則<s:property value=”student.{student}[0]”/>

          11.利用選擇技術獲取List中滿足某些條件的對象 #

          <s:property value=”student.{?#this.grade>=60}”/>

          <s:property value=”student.{^#this.grade>=60}.{userName}”/>

          <s:property value=”student.{#this.grade>=60}.{userName}[0]”/>

          ? 取出所有對象 返回字符串

          ^ 取出第一個對象,返回一個聯表,可以取size

           $ 取出最后一個對象,

          12. #的作用:

                 內存中五大對象 parameters,request ,session,application ,attr中獲取對象,要用#

                  Parameters: <s:property value=” #parameters.userName”/>

                  如果要使用URL傳值,則<result type=”redirect”>/test.jsp</result>

          13. %的作用:

          %可以取出存放在ValueStack中的Action對象,并直接調用他的方法

          如果我們的Action繼承ActionSupport類,則可以%{getText(‘key’)}用這種方式取出國際化信息

          14. $的作用:${}

                 $可以在國際化資源文件中引用OGNL表達式

                 $也可以在struts.xml配置文件中引用表達式

          15.struts2中從一個Action1跳到另一個Action2(使用chain,則跳轉后先從Action2的ValueStack中查找值,再從Action1 ValueStack中查找值

          服務器端跳轉:

                 <action name=”testv1” class=”com.test.TestV1”>

                        <result type=”chain”>

                               <param name=”actionName”>testv2</param>

                        </result>

                 </action>

          客戶端跳轉:

                 <action name=”testv2” class=”com.test.TestV2”>

                        <result type=”redirectAction”>

                               <param name=”actionName”>testv2</param>

                        </result>

                 </action>

          posted on 2009-07-14 16:38 長春語林科技 閱讀(701) 評論(0)  編輯  收藏 所屬分類: struts2
          <2009年7月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

           

          長春語林科技歡迎您!

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宁化县| 淮北市| 涪陵区| 邵武市| 达州市| 沙洋县| 依兰县| 商洛市| 灵台县| 绥阳县| 方城县| 承德市| 宽甸| 无为县| 博客| 会昌县| 巨鹿县| 宝应县| 抚宁县| 仁化县| 巴马| 赤城县| 连江县| 鹤峰县| 五华县| 通江县| 万州区| 天柱县| 合山市| 阜康市| 工布江达县| 呼伦贝尔市| 甘南县| 庄河市| 平顺县| 堆龙德庆县| 稻城县| 昌图县| 凤冈县| 上栗县| 玉龙|