使用EL表达式从域中取值

<%@page import="com.yxfyg.user.User"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.util.Map"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>EL表达式</title>
</head>
<body>
    <%
        pageContext.setAttribute("name", "page");
        request.setAttribute("name", "request");
        session.setAttribute("name", "session");
        application.setAttribute("name", "application");
    %>
    
    <p>使用Java代码取值</p>
    
    <%=pageContext.getAttribute("name") %>
    <%=request.getAttribute("name") %>
    <%=session.getAttribute("name") %>
    <%=application.getAttribute("name") %>
    
    <p>使用EL表达式取值</p>
    
    ${ pageScope.name }
    ${ requestScope.name }
    ${ sessionScope.name }
    ${ applicationScope.name }
    
    <p>使用EL表达式取域中的数组</p>
    
    <%
        String[] array = {"aaa","bbb","ccc","ddd"};
        pageContext.setAttribute("array", array);
    %>
    
    ${ array[0] },${ array[1] },${ array[2] },${ array[3] }
    
    <p>使用EL表达式取域中的List集合</p>
    
    <%
        List list = new ArrayList();
        list.add("aaa");
        list.add("bbb");
        list.add("ccc");
        list.add("ddd");
        pageContext.setAttribute("li", list);
    %>
    
    ${ li[0] },${ li[1] },${ li[2] },${ li[3] }
    
    <p>使用EL表达式取域中的Map集合</p>
        
    <%
        Map map = new HashMap();
        map.put("name","Jack");
        map.put("age", 34);
        map.put("address","beijing");
        map.put("address.aa", "shanghai");
        pageContext.setAttribute("m", map);
    %>
    
    ${ m.name },${ m.age },${ m.address },${ m["address.aa"] }
    
    <p>使用EL表达式取域中的对象的属性值</p>
    
    <!-- 
    package com.yxfyg.user;

    public class User {
    
    private String name;
    private int age;
    private String address;
    
    public User(String name, int age, String address) {
        super();
        this.name = name;
        this.age = age;
        this.address = address;
    }
    
    public String getName() {
        return name;
    }
    
    public void setName(String name) {
        this.name = name;
    }
    
    public int getAge() {
        return age;
    }
    
    public void setAge(int age) {
        this.age = age;
    }
    
    public String getAddress() {
        return address;
    }
    
    public void setAddress(String address) {
        this.address = address;
    }
    
}
     -->
     
     <%
         User user = new User("Jack",22,"beijing");
         session.setAttribute("u", user);
     %>
     
     ${ u.name },${ u.age },${ u.address }
     
     <p>使用EL表达式判断对象是否为空</p>
     
     ${ empty u }
     
</body>
</html>

 

posted @ 2020-05-07 09:11  yxfyg  阅读(323)  评论(0)    收藏  举报