EL表达式
1. 作用
-
代替jsp中的java代码
-
从域中取数据
- 一个key对应多个域,优先从小范围中取数据
-
将其转换为字符串
-
输出到浏览器
${name}:<%=request.getAttribute("name") == null ? "" : request.getAttribute("name")%>public class Person { private String name; private int age; public void setName(String name) { this.name = name; } public int getAge() { return age; } public void getEmail(){} } /* *EL表达式取数据两种方式 * 1.${person.email} = ${person.getEmail()}:只与getEmail()方法有关,与有没有email属性无关 * 2.${person["email"]} :注意要加"" */
2. EL表达式中的内置对象
-
pageContext:在EL表达式中没有request对象,获取应用根只能:${pageContext.request.contextPath}
-
param:获取用户提交数据的第一个参数
${param.username} === <%=request.getParameter("username")%> -
paramValues:获取用户提交的数据的一维数组
${paramValues.username} === <%=request.getParameterValues("username")%> 获取的是数组 -
initParam:对应jsp中的application对象
-
其他:非重点
3. El表达式中的运算符
- 算术运算符
- A+B:只做求和不做字符串拼接,会自动将A,B转化为数字
- 关系运算符
- ==/eq:调用了equals方法
- !=:调用epuals方法
- empty:判断是否为空,输出true/false;${empty param.name}
EL表达式是Java Web开发中的重要组成部分,主要用于替代JSP中的Java代码,从域中获取数据。它可以方便地输出到浏览器,并支持多种内置对象,如pageContext用于获取应用根路径,param用于获取用户提交的第一个参数,paramValues则返回参数的一维数组。此外,EL还提供了算术和关系运算符,如加法操作不会进行字符串拼接,而是自动转换数字类型。对于空值检查,empty关键字可用于判断变量是否为空。通过${person.email}
244

被折叠的 条评论
为什么被折叠?



