zoukankan      html  css  js  c++  java
  • EL表达式

    EL表达式

    Expression Language 表达式语⾔,替代 JSP ⻚⾯中数据访问时的复杂编码,可以⾮常便捷地取出域对象(pageContext、request、session、application)中保存的数据,前提是⼀定要先 setAttribute, EL 就相当于在简化 getAttribute ${变量名} ,变量名就是 setAttribute 对应的 key 值。

    EL表达式查找顺序

    1.EL表达式对于四种域对象的默认查找顺序

    pageContext -》request-〉session-》application 按照上述的顺序进⾏查找,找到⽴即返回,在 application 中也⽆法找到,则返回 null

    2.指定作用域进行查找

    pageContext:${pageScope.name}

    request:${requestScope.name}

    session:${sessionScope.name}

    application:${applicationScope.name}

    数据级联:

    <%
        // pageContext.setAttribute("name","page");
    	// request.setAttribute("name","request");
    	// session.setAttribute("name","session");
    	// application.setAttribute("name","application");
        User user = new User(1,"张三",86.5,new Address(1,"⼩寨"));
        System.out.println(user.toString());
        pageContext.setAttribute("user",user);
    %>
    <table>
        <tr>
            <th>编号</th>
            <th>姓名</th>
            <th>成绩</th>
            <th>地址</th>
        </tr>
        <tr>
            <td>${user.id}</td>
            <td>${user.name}</td>
            <td>${user.score}</td>
            <td>${user.address}</td>
        </tr>
    </table>
    

    3.EL执行表达式

    ${num1&&num2} && || ! < > <= <= ==

    && and

    || or

    ! not

    == eq

    != ne

    < lt

    gt

    <= le

    = ge

    empty 变量为 null,⻓度为0的String,size为0的集合

    示例

    <%
        EL_User user=new EL_User("边信哲",20183694,21);
        request.setAttribute("user",user);     //这里的key值是user
    %>
    
    <!--首先用EL表达式单纯输出user-->
    <!--未改写EL_User的toString()方法   输出结果:user:com.wildfire.javabean.EL_User@5e42f507-->
    <!--改写了EL_User的toString()方法   输出结果:user:EL_User{name='边信哲', id=20183694, age=21}-->
    <h1>user:${user}</h1>
    <hr>
    <!--如果想分别取出name id age里面的value值-->
    ${user.name}  ${user.id}  ${user.age}
    <!--
        原理:
        1.id--》Id
        2.寻找到getId()方法
        3.调用getId()方法
    -->
    
    <!--也可以这样取user.address.addressAD-->
    <!--也可以这样取user["id"]-->
    <!--也可以这样设置user.id=20183694  但是不经常这么用-->
    
  • 相关阅读:
    拼接表达式树的原理
    ql Server 2012完全卸载方法
    jquery tmpl 详解
    Entity Framework(EF) Code First将实体中的string属性映射成text类型的几种方式
    Entity Framework 数据生成选项DatabaseGenerated
    Entity Framework 复杂类型
    EF Code First 学习笔记:约定配置
    比特币转账流程
    mmap 的理解
    copy_to_user,copy_from_user,get_user,put_user函数比较
  • 原文地址:https://www.cnblogs.com/wind-and-sky/p/14213164.html
Copyright © 2011-2022 走看看