几个常用EL表达式的用法
2024-10-14 20:53:30
转载至 http://yqsshr.blog.51cto.com/469059/131824
1,用来获取表单数据 param 和 paramValues
1.jsp 的有如下表单
<form action="sampleJsp.jsp" method="post">
<input type="text" name="sampleValue" value="10" />
<input type="text" name="sampleValue" value="11" />
<input type="text" name="sampleValue" value="12" />
<input type="text" name="sampleSingleValue" value="SingleValue"/>
<input type="submit" value="提交"/>
</form>
<input type="text" name="sampleValue" value="10" />
<input type="text" name="sampleValue" value="11" />
<input type="text" name="sampleValue" value="12" />
<input type="text" name="sampleSingleValue" value="SingleValue"/>
<input type="submit" value="提交"/>
</form>
sampleJsp.jsp 的 <body>中 有
${paramValues.sampleValue[2]}
${param.sampleSingleValue }
${param.sampleSingleValue }
显示结果为12 SingleValue
第一个EL表达就相当于在servlet中使用request.getParameterValues("sampleValue");
第二个EL表达式就相当于在servlet中使用request.getParameter("sampleSingleValue");
2,用来从作用域中显示数据
假设 test.jsp中有 <% request.setAttribute("aaa","object");%>
用${aaa}可以将 object 显示在页面上.但最好使用 ${requestScope.aaa} 因为 EL 表达式在作用域中的搜索顺序是pageScope, requestScope, sessionScope, applicationScope, 给定了作用域会使得显示的性能更好.
3, Empty 操作符
empty 操作符是一个前缀,用于检测一个值是否为null 或 empty . 假设 a 不存在 ,则 ${empty a }返回的结果为 true
4 条件操作符
${A?B:C } 如果A 为true 则返回B 否则返回 C
例如:
<select >
<option value="1" ${param.op==1 ? "selected" : ""}>选项一</option>
<option value="2" ${param.op==2 ? "selected" : "">选项二</option>
</select >
EL表达式的语法
5 EL表达式求值规则${a.b}
6 []与.
如果${object.propertyName}中propertyName不是一个合法的Java变量名,那么只能用[]
7 11个隐含对象
8 ${a + b}temp${c+d}
会将a+b的结果转换位String类型然后和temp等拼接
最新文章
- iOS 报错汇总
- 基于HTML5和JS实现的切水果游戏
- org.springframework.expression.spel.SpelEvaluationException: EL1005E:(pos 0): Type cannot be found
- Unity-WIKI 之 DebugLine
- 定制CentOS (Redhat AS 5.1)安装盘
- ubuntu server 系统,更换阿里云源(用户更新源)
- BLOCK专题
- 【BZOJ1823】 [JSOI2010]满汉全席
- OD: Register, Stack Frame, Function Reference
- [Powershell] 检查IIS设置
- Winform DataGridView CheckBoxColumn c# 单选 解决方案
- Tomcat session集群
- MySQL数据库中实现对中文字段按照首字字母排序
- AngularJS基于模块化的MVC实现
- 如果debug调试的时候中断总是停在析构函数的delete[] p上
- Ubuntu16.04下安装配置phpmyadmin
- Fluent动网格【3】:DEFINE_CG_MOTION宏
- tomcat如何正确的开启远程调试功能
- 通过手动安装来启动ZStack
- ILSpy 反编译.NET