您的位置:首页 > 其它

EL 表达式的用法(一)--获取数据

2017-07-19 16:08 316 查看




<%@ page language="java" import="java.util.*, cn.hncu.domain.User" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>EL表达式</title>

  </head>

  

  <body>

    <h1>EL表达式作用1: 获取数据</h1>

    <h2>EL表达式读取简单的属性值</h2>

    <h3>EL读取容器中的属性值,注意:只有放在容器的数据才能读取出来,且标识符是属性名(并非对象名)</h3>

    <%

       pageContext.setAttribute("name", "pageJack");

       //pageContext.setAttribute("name", "requestJack", PageContext.REQUEST_SCOPE);

       //session.setAttribute("name", "sessionJack");

       //application.setAttribute("name", "appJack");

    %>

    ${name}<!-- 此处 name 是属性名 -->

    <!-- EL表达式内部调用  pageContext.findAttribute("name")

                     输出时等价于:  pageContext.findAttribute("name")?null:"",pageContext.findAttribute("name") -->

    <br/>

    

    ${aaa} <!-- 由于4个容器中都不存在该aaa属性,因此输出空串 -->

    <br/>

    

    <%

    User user = new User();

        user.setName("Tom");

        user.setAge(22);

        user.setPwd("1234");

        pageContext.setAttribute("u", user); //只有放在容器中,才能用EL表达式读取出来。

    %>
${u} <br/>  <!-- 如果该属性的值是一个对象,则自动会调用toString() -->

${u.name},${u.age},${u.pwd} <br/> <!--内部是根据属性名推出对应getter方法进行调用 -->



<h4>EL表达式读取复杂的属性值--map,list,map和list的结合</h4>
<%
  Map<String,Object> map = new HashMap<String,Object>();
  map.put("nm", "城院");
  map.put("age","15");
  map.put("user",user);
  request.setAttribute("m", map);
%>
${m}<br/> <!-- 输出整个map中的内容:{age=15, user=User [name=Tom, age=22, pwd=1234], nm=城院}  -->

<!-- 读取map中属性的两种方式,注意方式2中的引号不能省  -->
${m.nm}, ${m['nm']}  <br/> 
${m.user.name}, ${m['user'].name}, ${m.user['name']}
<br/>

<%
  List<Object> list = new ArrayList<Object>();
  list.add("aaa");
  list.add("张三");
  list.add("城院");
  list.add(user);
  session.setAttribute("list", list);
%>
${list} <br/>  <!-- 输出整个list中的内容: [aaa, 张三, 城院, User [name=Tom, age=22, pwd=1234]]  -->

<%-- 读取list中属性的方式: ${标识名[序号]}  --%>
${list[1]}<br/>

<%
  map.put("mlist", list);
  request.setAttribute("m", map);
%>
${m.mlist[3].name} <br/>

  </body>

</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  EL表达式