几个常用EL表达式的用法

转载至  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>
sampleJsp.jsp 的 <body>中    有
    ${paramValues.sampleValue[2]}
    ${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等拼接

 

posted @ 2016-12-05 18:52  kiton  阅读(3428)  评论(0编辑  收藏  举报