
本文共 972 字,大约阅读时间需要 3 分钟。
1. jsp页面中使用Java代码获取表单中的用户名,一般会使用<% request.getParameter("usename"); ,但是我们使用EL表达式之后发现会比Java代码简洁得多,而且在jsp页面只是写html代码,而没有Java代码会显得更加简洁:${param.usename}
2. EL表达式中里面不用加引号,加入加上引号之后页面直接会显示引号里面的字符串,而不是属性中的属性值
3. EL的两个运算符: .和[ ]
表示取出变量中某个属性的属性值,两者都可以取值,例如:${param.name}, ${param[ "name" ]}都可以取出属性值
但是需要注意的是当属性名中含有特殊字符 . 或者 -的时候应该要使用 [ ]的方式来取值,第一种方式是不能够取值的
但是大部分情况下属性中没有特殊的字符串一般使用第一种取值方式
4. EL表达式的取值范围
pageScope, requestScope, SessionScope, ApplicationScope, 如果没有给出取值范围首先会在page范围找,没有在request范围中找,依次类推
5. 比如一个页面中:
① request.setAttribute("usename",usename);
另外一个页面取值使用EL表达式为 ${requestScope.usename};
② 一般获取表单中传递过来的表单值或者直接从浏览器的地址栏获取某个属性名的属性值
使用EL表达式为: ${param.usename}, ${param.errorMsg}
6. 使用EL表达式可以自动转换类型
传统的Java代码可能这样:
<%
String stringAge = requestParameter("age");
int age = stringAge.parseInt(stringAge);
out.print(age + 1)
%>
但是使用EL表达式可以这样写:
${stringAge + 1}; , 因为EL表达式可以自动进行类型的转换
7. 通过获得的参数进行比较的时候
${param.usename1 == param.usename2}
empty用于判断是否为null或空
${empty null} ${empty ""}
发表评论
最新留言
关于作者
