1、获取数据(javaBean的属性/list集合/map集合/数组)。
有两个方法,一是用 . 来获取,例如
<%
//这里放Java代码,User类自行创建
User user = new User();
user.setName("abc");
out.print(user.getName());
pageContext.setAttribute("u", user);
%>
${pageScope.u} <!-- 获取pageContext.setAttribute("u", user);的值-->
${u.name }<!-- 相当于out.print(user.getName()),点后的name就是get后的Name,首字母小写,如果NAme,则点后写NAme-->
第二种用
[ ] 获取,如
<%
List list = new ArrayList();
list.add("aaa");
list.add("bbb");
request.setAttribute("lists", list);
%>
${lists[0]}
<%
Map map=new HashMap();
map.put("a","abc");
request.setAttribute("maps", map);
%>
${maps.a}<!-- 相当于map.getValue("a"),map集合可以这样用,但是一般还是以[]来获取-->
${maps["a"]}
与java中域的匹配
<%
pageContext.setAttribute("aa", "123456");
%
${pageScope[aa]}
pageContext --> pageScope
request --> requestScope
session --> sessionScope
application --> applicationScope
2、执行运算
2.1算数运算符 +-*/
2.2 关系运算符
eq 相等
neq / ne 不相等
gt 大于
lt 小于
gte / ge 大于等于
lte / le 小于等于
2.3 逻辑运算符
&& 或者 and
|| 或者 or
! 或者 not
2.4 三元运算符
表达式1?表达式2:表达式3
2.5 特殊运算符
empty 判断 null / 空字符串 /没有元素的集合
返回值 是 true 或者 false
${9>8 }或者${9 gt 8 }
${3<2?"对":"错" }
3.获取web开发常用对象
EL表达式语言中定义了11个隐式对象
利用隐式对象 可以获取其他常用对象 并获取数据
3.1)与范围有关的隐式对象 四个
pageScope 当前页面范围
requestScope 请求范围
sessionScope 会话返回
applicationScope 应用范围
3.2)与输入有关的隐式对象 两个
param 表示返回请求参数中的单个字符串
paramValues 表示返回请求参数的一组值
在EL表达式中 可以使用:
${param.name} ==getParameter(String name)
${paramValues.name} ==getParameterValues(String name)
3.3)其他隐式对象 五个
cookie cookie对象的name值
${cookie.JSESSIONID.value}获取session id。
headerValues 重名的请求消息头
initParam 获取web.xml中的全局变量
pageContext 获取当前页面的详细信息
4.调用java方法
EL表达式允许用户开发自定义EL函数
可以在jsp页面中 通过EL表达式 调用java类的方法
当页面EL表达式不起作用,调用<%@ page isELIgonored="false" %> 表示不禁用EL表达式。