再论 Struts2 OGNL表达式

来源:互联网 发布:有道软件下载 编辑:程序博客网 时间:2024/05/16 11:14

Struts2的几种OGNL表达式的用法

1. 访问值栈(value stack contents)中的属性

          <s:property value="username"/> 

2. 访问值栈中对象的属性(set,get).如果是属性也是个对象,方法和EL表达式一样.

        <s:property value="user.username"/>

3. 访问Action中的普通方法

        <s:property value="loginUser()" /> 

4. 访问Action静态方法(commonAction是action所在的包,静态属性同理)

      <s:property value="@commonAction.userAction@loginUser()" />

5. 访问List (会把这个List里所有的值都显示出来)

     <s:property value="userList"/> 

6. 访问List中的指定对象的属性,和iterator结合共同使用

     <s:iterator value="friendList">

           <s:property value="name" />

      </s:iterator>

7. 访问map 把map里的所有的 键=值 显示出来

        <s:property value="userMap"/>  

8. 访问map指定键的值 (显示所有键userMap.keys;所有值userMap.values;Map长度: userMap.size() )

        <s:property value="userMap.uname"/> 

9. 投影 过滤.. {}里判断的是userList的条件 这里的this是指当前从值栈里得到的userList,注意1是int类型

        <s:property value="userList.{?#this.username==1}.{username}"/> 

10. 过滤 条件是String类型

        <s:property value="userList.{?#this.username==/"a/"}.{username}"/> 

原创粉丝点击