Java jsp 详细说明 --- EL表达式

  1. EL表达式的概念及作用

    作用:是jsp写起来更简单,更简洁。主要用于获取作用域中的数据。
     
  2. EL表达式的应用  name  只是一个变量

    1.${xxxxScope.name} :获取具体某个作用域中的属性的值

    2.${name}                   :获取作用域中的数据,因为没有指定作用域,则会自动进行逐级查找  顺序为:pageContext request session application

    3.EL表达式和jsp脚本的区别:<%=request.getAttribute() %> 没有找到返回null      ${requestScope.name} 没找到返回""

    4.获取数据:
     
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        Title
    
    
        <%
            User user = new User("DL19121630","123456");
            request.setAttribute("user",user);
        %>
        <%-- 指定作用域获取数据 --%>
        ${requestScope.user}
        ${requestScope.user.name}
        ${requestScope.user.password}
        
    <%-- 不指定作用域获取数据 --%> ${user.name} ${user.password}
    <%-- 第三种获取 --%> ${user["name"]} ${user["password"]}

     

  3. EL表达式获取 数组,集合等元素。
     
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        Title
    
    
        <%
            //数组
            int[] nums = {1,2,3};
            request.setAttribute("nums",nums);
            //集合
            ArrayList strings = new ArrayList<>();
            strings.add("one");
            strings.add("two");
            strings.add("three");
            request.setAttribute("strings",strings);
            //map集合
            Map maps = new HashMap<>();
            maps.put("name","代先生");
            maps.put("age","18");
            maps.put("sex","男");
            request.setAttribute("maps",maps);
        %>
    
        <%--获取数组元素--%>
        ${requestScope.nums[0]}
        ${requestScope.nums[1]}
        ${requestScope.nums[2]}
        
    <%--获取集合元素--%> ${requestScope.strings[0]} ${requestScope.strings[1]} ${requestScope.strings[2]}
    <%--获取map集合元素--%> ${requestScope.maps["name"]} ${requestScope.maps.name}
  4. empty关键字

    作用:判断是否有值,如果有,则返回true,否则返回false
    <% 
    	String s1="";
        pageContext.setAttribute("s1", s1);
        String s2=null;
        pageContext.setAttribute("s2", s2);
        String s3="122222";
        pageContext.setAttribute("s3", s3);
        List list1 =new ArrayList();
        pageContext.setAttribute("list1", list1);
    %>
    
    ${empty s1}
    ${empty s2}
    ${empty s3}
    ${empty list1}

     

你可能感兴趣的:(Java知识分享)