EL技术

概述

EL(Express Language)表达式可以嵌入在JSP页面内部,减少JSP脚本的编写,EL出现的目的是要代替JSP页面中脚本的编写。

EL从域中取出数据

EL最重要的作用是获得四大域中的数据,格式{pageContextScope.key}
EL获得request域中的值:{sessionScope.key}
EL获得application域中的值:${applicationScope.key}
代码示例

<%@ page import="com.itheima.domain.User" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %><%--
  Created by IntelliJ IDEA.
  User: 王海峰
  Date: 2018/9/20
  Time: 9:29
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


    <%
        request.setAttribute("company","黑马程序员");
        //存储一个对象
        User user=new User();
        user.setId(1);
        user.setName("zhangsan");
        user.setPassword("123");

        session.setAttribute("user",user);
        //存储一个集合

        List list = new ArrayList();
        User user1 = new User();
        user1.setId(2);
        user1.setName("lsii");
        user1.setPassword("1234");
        list.add(user1);
        User user2 = new User();
        user2.setId(3);
        user2.setName("wangwu");
        user2.setPassword("12346");
        application.setAttribute("list",list);



    %>

<%=
    request.getAttribute("company")
%>
<%
    User sessionUser = (User) session.getAttribute("user");
    out.write(sessionUser.getName());
%>
<%--使用EL表达式获得域中的值--%>
${requestScope.company}
${sessionScope.user.name}
${applicationScope.list[1]}





使用EL表达式全域查找

从最小的范围开始查找,也就是说不加域的范围,直接查找参数名称
EL获得pageContext域中的值 {key}
EL获得session域中的值:{key}

El的内置对象(11个)用的少,没人问

你可能感兴趣的:(EL技术)