STRUTS2中_,$,%符号详解及应用场景
在Struts2标签中,符号#、%、$具有特殊的用途和用法,对于理解这些符号在OGNL表达式中的功能至关重要。本文将对这些符号进行详细介绍。 1. **#符号**: - **访问非根对象属性**:在Struts2中,由于值栈被视为根对象,通过#前缀可以访问其他非根对象。例如,#session.msg等价于ActionContext.getContext().getSession().getAttribute("msg"),表示获取session中的msg属性。 - **过滤和投影集合**:当在遍历或操作集合时,如persons列表,#this.age>20用于筛选满足条件的元素,执行投影操作。 - **构造Map**:在表达式#{'foo1': 'bar1', 'foo2': 'bar2'}中,#用于创建一个键值对的Map。 2. **%符号**: - **字符串类型的标志属性**:%符号在字符串属性中用于计算OGNL表达式的值。如在<s:set>标签中,%{#foobar['foo1']}代替#foobar['foo1'],使得属性值能够动态计算。 3. **$符号**: - **国际化资源文件**:在国际化资源文件中,$符号用于引用OGNL表达式,如reg.agerange = 国际化信息:年龄必须在${min}和${max}之间,这里的${min}和${max}会被实际的OGNL表达式替换为对应的值。 - **配置文件中的OGNL引用**:在Struts2验证器配置中,如<paramname=”min”>10</param><paramname=”max”>100</param>,$符号被用于动态设置参数值,message标签中的${min}和${max}也会根据配置中的OGNL表达式动态显示错误消息。 理解并熟练运用这些符号是Struts2开发中不可或缺的一部分,可以帮助开发者更有效地处理数据绑定、国际化和配置管理,提高代码的灵活性和可维护性。在实际项目中,开发者需要根据具体场景选择合适的符号,确保OGNL表达式的正确性和性能。
剩余13页未读,继续阅读
在struts2 2.3.15.1版本中将jsp页面中的<c:if test="${empty pageFinder.data }"> <td colspan=13 align="center” height="25"xfont color="red"没有查询到相关记录</f</c:if> <s:iterator value="%{pageFinder.data}" var="rehs” status="status"><s:set var="index”value="#status getIndex()"/> 这段代码中的<s:iterator value="%{pageFinder.data}"改为<s:iterator value="${pageFinder.data}"系统会报does not accept any expressions这个错误,是什么原因? shiyugao -
粉丝: 0
- 资源: 6
上传资源 快速赚钱
- 我的内容管理
展开
- 我的资源
快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分
登录查看自己的积分
- 我的C币
登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
-
彩虹rain bow point鼠标指针压缩包使用指南
-
C#开发的C++作业自动批改系统
-
Java实战项目:城市公交查询系统及部署教程
-
深入掌握Spring Boot基础技巧与实践
-
基于SSM+Mysql的校园通讯录信息管理系统毕业设计源码
-
精选简历模板分享:简约大气,适用于应届生与在校生
-
个性化Windows桌面:自制图标大全指南
-
51单片机超声波测距项目源码解析
-
掌握SpringBoot实战:深度学习笔记解析
-
掌握Java基础语法的关键知识点
-
SSM+mysql邮件管理系统毕业设计源码免费下载
-
wkhtmltox下载困难?找到正确的安装包攻略
-
Python全栈开发项目资源包 - 功能复刻与开发支持
-
即时消息分发系统架构设计:以tio为基础
-
基于SSM框架和MySQL的在线书城项目源码
-
认知OFDM技术在802.11标准中的项目实践
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证 文档复制为VIP权益,开通VIP直接复制 信息提交成功
- 粉丝: 0
- 资源: 6
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 彩虹rain bow point鼠标指针压缩包使用指南
- C#开发的C++作业自动批改系统
- Java实战项目:城市公交查询系统及部署教程
- 深入掌握Spring Boot基础技巧与实践
- 基于SSM+Mysql的校园通讯录信息管理系统毕业设计源码
- 精选简历模板分享:简约大气,适用于应届生与在校生
- 个性化Windows桌面:自制图标大全指南
- 51单片机超声波测距项目源码解析
- 掌握SpringBoot实战:深度学习笔记解析
- 掌握Java基础语法的关键知识点
- SSM+mysql邮件管理系统毕业设计源码免费下载
- wkhtmltox下载困难?找到正确的安装包攻略
- Python全栈开发项目资源包 - 功能复刻与开发支持
- 即时消息分发系统架构设计:以tio为基础
- 基于SSM框架和MySQL的在线书城项目源码
- 认知OFDM技术在802.11标准中的项目实践