1,访问Action值栈中的普通属性: 

<s:property value="attrName"/> 

2,访问Action值栈中的对象属性(要有get set方法): 

<s:property value="obj.attrName"/> 

<s:property value="obj1.obj2.attrName"/> 

3,访问值栈中对象属性的方法 

<s:property value="obj.methodName()"/> 

4,访问值栈中action的普通方法: 

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

5,访问静态方法: 

<s:property value="@com.softeem.LoginAction@methodName()"/> 

6,访问静态属性: 

配置属性文件,允许ognl访问静态方法struts.ognl.allow...=true 

<s:property value="@com.softeem.LoginAction@attrName"/> 

7,访问Math类的静态方法: 

<s:property value="@@min(9,7)"/> 

8,访问普通类的构造方法: 

<s:property value="new com.softeem.User(2)"/> 

9,访问集合: 

①list集合对象 

<s:property value="listName"/> 

②list集合中的某个元素 

<s:property value="listName[1]"/> 

③list中某个属性的集合 

<s:property value="listName.{field}"/> 

④list中某个属性集合的特定值 

<s:property value="listName.{field}[0]"/> 

⑤访问set 

<s:property value="setName"/> 

⑥访问set中某个元素 

<s:property value="setName[0]"/> 

⑦访问map 

<s:property value="mapName"/> 

⑧根据key访问Map中的元素 

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

<s:property value="mapName['username']"/> 

<s:property value="mapName[/"username/"]"/> 

⑨访问map中所有的key 

<s:property value="mapName.keys"/> 

10,访问map中所有的values 

<s:property value="mapName.values"/> 

11,访问map的大小 

<s:property value="mapName.size()"/> 

12,投影 

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

<s:property value="listName.{^#this.age>1}"/> 

<s:property value="listName.{$#this.age==1}"/> 

<s:property value="listName.{$#this.age==1}.{age}==null"/> 

[]:<s:property value="[0]"/>值栈中的对象 





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

  访问action中传过来的对象:<s:property value="user"/>|${user }<br> 

  访问action中传过来的对象中的属性:<s:property value="user.username"/>|${user.username }<br> 

   访问action中传过来的对象属性类中的方法:<s:property value="user.getUsername()"/><br> 

访问action中传过来的对象中的对象:<s:property value="user.group"/><br> 

访问action中传过来的对象中的对象的属性:<s:property value="user.group.gname"/> | 

<s:property value="user.group.getGname()"/><br> 

访问action中的普通方法:<s:property value="getValue()"/><br> 

访问其他类中过的静态方法:<s:property value="@com.softeem.pojos.User@printUser()"/><br> 

   取到Math类中的方法:<s:property value="@@max(12,45)"/><br> 

   访问User类的构造方法:<s:property value="new com.softeem.pojos.User()"/><br> 

   访问list:<s:property value="users"/><br> 

   获取list的长度:<s:property value="users.size()"/><br> 

   取到list中第一个元素:<s:property value="users.get(0)"/>|<s:property value="users[1]"/><br> 

取到list中username属性的集合:<s:property value="users.{username}"/><br> 

根据key取到map中的元素:<s:property value="userMap.张三"/>| 

<s:property value="userMap['三毛']"/><br> 



⑨访问map中所有的key:<s:property value="userMap.keys"/><br> 

10,访问map中所有的values:<s:property value="userMap.values"/><br> 

11,访问map的大小:<s:property value="userMap.size()"/><br> 



12,投影:<s:property value="users.{?#this.username=='张三'}.{password}"/><br> 





13,取到list中满足条件的开头的一个元素的密码:<s:property value="users.{?#this.username='张三'}.{password}[0]"/><br> 

14,取到list中满足条件的最后的一个元素的密码:<s:property value="users.{$#this.username='张三'}.{password}"/><br> 

15,<s:property value="users.{$#this.username=='admin'}.{group}==null"/><br> 

16,从栈顶开始取,一直取到指定的位置(0表示栈底):<s:property value="[1]"/> 

   <s:debug></s:debug>

<s:property>的用法(jsp获取action中的值或者方法)的更多相关文章

  1. jsp获取Session中的值

    摘要:这个问题算是老生常谈了,我也是一段时间没弄过了,所以感觉有些忘了,就记录一下. 一.后端通过shiro在session中存储数据: // username是前台传过来的用户名 if (subje ...

  2. struts框架中OGNL表达式的使用之jsp页面获取action中的属性值

    在jsp页面中获取action中的值: 1.写一个action类OgnlAction类: 需要注意的地方: 如果在aciton中直接使用ognl表达式,将值存储的值栈中,是不能通过跳转将值传到jsp页 ...

  3. struts2中怎么把action中的值传递到jsp页面

    对于如何把struts2的action中的值传到jsp页面中,主要的方法有2种: 使用转发视图利用request域中储存所需的值 使用重定向时存储数据进入session使其在jsp中可以获得 下面,让 ...

  4. JS或jsp获取Session中保存的值

    JS是不能读取Session中的值的 . session是服务器对象, javascript是客户端脚本,你能做的操作就是把这个值用 <%=%>输出到页面的javascript中参与运算, ...

  5. struts2 笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

    Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDis ...

  6. 笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

    Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDis ...

  7. Android控件ListView获取item中EditText值

    能够明白,如今没有直接方法能够获得ListView中每一行EditText的值. 解决方式:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值. 大概算法:重写Ba ...

  8. 10、一个action中处理多个方法的调用第二种方法method的方式

    在实际的项目中,经常采用现在的第二种方式在struct.xml中采用清单文件的方式 我们首先来看action package com.bjpowernode.struts2; import com.o ...

  9. 10、一个action中处理多个方法的调用第一种方法动态调用

    我们新建一个用户的action package com.weiyuan.test; import com.opensymphony.xwork2.ActionSupport; /** * * 这里不用 ...

随机推荐

  1. UVa 12118 检查员的难题 (dfs判连通, 构造欧拉通路)

    题意: 分析: 欧拉通路:图连通:图中只有0个或2个度为奇数的结点 这题我们只需要判断选择的边构成多少个联通块, 再记录全部联通块一共有多少个奇度顶点. 然后我们在联通块中连线, 每次连接两个联通块就 ...

  2. 单机安装hadoop集群

    一 .安装前准备 1.VMware虚拟内容 2.Linux系统 (CentOS-6.9-min) 镜像文件http://vault.centos.org/ 3.jdk 1.8 rpm或bin文件 ht ...

  3. ZOJ 3824 Fiber-optic Network

    Fiber-optic Network Time Limit: 15000ms Memory Limit: 262144KB This problem will be judged on ZJU. O ...

  4. 70.打印所有Spring boot载入的bean【从零开始学Spring Boot】

    [从零开始学习Spirng Boot-常见异常汇总] 问题的提出: 我们在开发过程当中,我们可能会碰到这样的问题:No qualifying bean  就是我们定义的bean无法进行注入,那到底是什 ...

  5. [Go]条件语句

    package main import ( "io/ioutil" "fmt" ) //条件语句 //if的条件语句不需要括号 //if的条件里可以赋值,if的 ...

  6. codeforces #299 div 2

    (总算是5题都做完了- -) 暂时做了4题,先放一下有时间做最后一题(当然如果我真的能做出的话...)(看了大神的代码总算是理解了E题,做完发现也没那么难,果然想出一个思路的过程对于我这种弱渣来说还是 ...

  7. [转]Fedora 添加国内源(sohu, 163)

    第一种方案 在国内163和搜狐提供很好的源,现在我们把它们俩添加到我们的源库.1. 添加搜狐的源 进入网站http://mirrors.sohu.com/,在左边找到fedora目录,点击该行右边的h ...

  8. XCode 或者ITune 添加账号时,提示:This action could not be completed. 或者 Access Privileges

    当遇到This action could not be completed 或者 You do not have enough access privileges for this operation ...

  9. 洛谷——P1608 路径统计

    P1608 路径统计 题目描述 “RP餐厅”的员工素质就是不一般,在齐刷刷的算出同一个电话号码之后,就准备让HZH,TZY去送快餐了,他们将自己居住的城市画了一张地图,已知在他们的地图上,有N个地方, ...

  10. Lca 之倍增算法

    引入: 比如说要找树上任意两个点的路上的最大值.如果是一般的做法 会 接近o(n)的搜,从一个点搜到另一个点,但是如果询问多了复杂度就很高了. 然后我们会预处理.预处理是o(n²)的,询问是o(1)的 ...