EL表达式实例

EL 表达式
EL隐式对象、存取器、运算符
----
今天刚看了《尚学堂_王勇_Struts_JSTL_EL表达式》视频,其中的实例分享给大家。
说明:网上的语言讲解特多,这里只举些实例。
--------------------

1.普通字符串

request.setAttribute("hello", "hello world");

---------------------------------------------El表达式获取

  • 普通字符串


  • hello(jsp脚本):<%=request.getAttribute("hello") %>

    hello(el表达式,el表达式的使用方法$和{}):${hello }

    hello(el表达式,el的隐含对象pageScope,requestScope,sessionScope,applicationScope,

    如果未指定scope,它的搜索顺序pageScope~applicationScope):${requestScope.hello }

    hello(el表达式,scope=session):${sessionScope.hello }

    --------------------------------------------页面输出
    .普通字符串
    hello(jsp脚本):hello world
    hello(el表达式,el表达式的使用方法$和{}):hello world
    hello(el表达式,el的隐含对象pageScope,requestScope,sessionScope,applicationScope,
    如果未指定scope,它的搜索顺序为pageScope~applicationScope):hello world
    hello(el表达式,scope=session):
    <><><><><><><><><><><><><><><><><><><>

    2.结构

    Group group = new Group();
    group.setName("尚学堂");

    User user = new User();
       user.setUsername("张三");
       user.setAge(18);
       user.setGroup(group);
      
    request.setAttribute("user", user);

    ---------------------------------------------El表达式获取

  • 结构,采用.进行导航,也称存取器


  • 姓名:${user.username }

    年龄:${user.age }

    所属组:${user.group.name }

    --------------------------------------------页面输出
    .结构,采用.进行导航,也称存取器
    姓名:张三
    年龄:18
    所属组:尚学堂
    <><><><><><><><><><><><><><><><><><><>

    3.map
    Map mapValue  = new HashMap();
       mapValue.put("key1", "value1");
       mapValue.put("key2", "value2");

    request.setAttribute("mapvalue", mapValue);


    ---------------------------------------------El表达式获取

  • 输出map,采用.进行导航,也称存取器


  • mapvalue.key1:${mapvalue.key1 }

    mapvalue.key2:${mapvalue.key2 }

    --------------------------------------------页面输出
    .输出map,采用.进行导航,也称存取器
    mapvalue.key1:value1
    mapvalue.key2:value2
    <><><><><><><><><><><><><><><><><><><>

    4.字符串数组
    String[] strArray = new String[]{"a", "b", "c"};
    request.setAttribute("strarray", strArray);

    User[] users = new User[10];
      for (int i=0; i<10; i++) {
     User u = new User();
     u.setUsername("U_" + i);
     users[i] = u;
      }
    request.setAttribute("users", users);

    ---------------------------------------------El表达式获取

  • 输出对象数组,采用[]和下标


  • userarray[3].username:${users[2].username }

    --------------------------------------------页面输出
    .输出对象数组,采用[]和下标
    userarray[3].username:U_2
    <><><><><><><><><><><><><><><><><><><>

    5.ArrayList
    List userList = new ArrayList();
       for (int i=0; i<10; i++) {
     User uu = new User();
     uu.setUsername("UU_" + i);
     userList.add(uu);
       }
    request.setAttribute("userlist", userList);

    ---------------------------------------------El表达式获取

  • 输出list,采用[]和下标


  • userlist[5].username:${userlist[4].username }

    --------------------------------------------页面输出
    输出list,采用[]和下标
    userlist[5].username:UU_4
    <><><><><><><><><><><><><><><><><><><>

    6.empty
    request.setAttribute("value1", null);
    request.setAttribute("value2", "");
    request.setAttribute("value3", new ArrayList());
    request.setAttribute("value4", "123456");

    ---------------------------------------------El表达式获取

  • el表达式对运算符的支持


  •  1+2=${1+2 }

     10/5=${10/5 }

     10 div 5=${10 div 5 }

     10%3=${10 % 3 }

     10 mod 3=${10 mod 3 }

      
     
  • 测试empty


  •   value1:${empty value1 }

      value2:${empty value2 }

      value3:${empty value3 }

      value4:${empty value4 }

      value4:${!empty value4 }

    --------------------------------------------页面输出
    .el表达式对运算符的支持
    1+2=3
    10/5=2.0
    10 div 5=2.0
    10%3=1
    10 mod 3=1

    .测试empty
    value1:true
    value2:true
    value3:true
    value4:false
    value4:true

    你可能感兴趣的:(JAVA)