EL表达式
程序员文章站
2022-05-06 07:53:21
...
EL表达式:${要取的变量名}
通过此获取作用域对象的值
-
只能获取作用域对象的值
-
可以获取普通变量、list(通过下标)、map(.key)、对象(.属性名)的数据
<% request.setAttribute("name", "张三"); List list = new ArrayList(); list.add("list-0"); list.add("list-1"); list.add("list-2"); Map map = new HashMap(); map.put("map1", "map1-1"); map.put("map2", "map2-2"); map.put("map3", "map3-3"); Person person = new Person("对象", 20, "男"); pageContext.setAttribute("list", list); pageContext.setAttribute("map", map); pageContext.setAttribute("person", person); %> <%--取值如下--%> ${name} <br> ${list}----------${list[0]} <br> ${map}----------${map.map1} <br> ${person}----------${person.age} <br>
访问该jsp页面如下:
-
EL表达式从各作用域对象取值的顺序
默认从最小的作用域取值,JSP有4大作用域,从小到大依次为
pageContext < request < session < application
-
EL表达式取指定作用域的值,使用
pageScope
requestScope
sessionScope
applicationScope
pageContext.setAttribute("data","pageContext"); request.setAttribute("data","request"); session.setAttribute("data","session"); application.setAttribute("data","application"); // 取值如下 ${data} <br> ${pageScope.data} <br> ${requestScope.data} <br> ${sessionScope.data} <br> ${applicationScope.data} <br>
访问该jsp页面如下:
-
EL表达式除了去作用域中的值还可以获取请求参数中的值:使用param、paramValues参数
${param.参数名} ${paramValues.参数名[]}
-
EL表达式可以做空值判断 使用empty,返回为字符串类型的true或false
{empty 参数名}
-
EL表达式除了通过".“取属性值,也可以通过”[]"取值
{user[param.name]} param.name也是一个EL表达式,获取请求参数中name的值,再从user中获取
-
EL表达式可以做简单的数学运算和逻辑判断
${5+4}
${5>4}
${scope > 85}
上一篇: Java多线程编程核心技术笔记:第1章 多线程技能
下一篇: 如何清除网页病毒_PHP教程