• EL——表达式概述、运算、内置对象


    EL概述

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

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

    1.EL表达式的格式:${EL表达式内容}
       相当于${}代替<%%>
    2.EL表达式的作用:     
        1.内置对象的使用
        2.对域对象中查找指定对象
        3.执行运算符
    3.从域对象中查找指定的数据
        域对象            EL对象
        pageContext      pageScope
        request          requestScope
        session          sessionScope
        application      applicationScope
    4.使用格式
        ${xxxScope.keyName}
        ${xxxScope['keyName']}
        简化:${keyName}
        如果keyName都相同,依次从pageScope,requestScope,sessionScope,applicationScope中获取属性,在某个域中获取后,将不再向后寻找
    5.EL获得数据
        1.普通数据
        ${域名城.键名}
    
        <!--获取域对象中保存的数据-->
        <%=application.getAttribute("DATA_IN_APP")%>
        <%=session.getAttribute("DATA_IN_SESSION")%>
        <%=request.getAttribute("DATA_IN_REQUEST")%>
    
        <hr>
    

    <%-- el的取值方式 --%>
    ${applicationScope.DATA_IN_APP}
    ${sessionScope.DATA_IN_SESSION}
    ${requestScope.DATA_IN_REQUEST}



    ${applicationScope["DATA_IN_APP"]}
    ${sessionScope["DATA_IN_SESSION"]}
    ${requestScope["DATA_IN_REQUEST"]}

    <%-- el取值的简化方式(key的值相同时,从域对象范围最小的先获取) --%>



    ${DATA_IN_APP}
    ${DATA_IN_SESSION}
    ${DATA_IN_REQUEST}

    2.JavaBean对象 ${域名称.键名.属性名}
    <%-- el取值的简化方式(key的值相同时,从域对象范围最小的先获取) --%>
    <%-- 获取JavaBean对象 --%> ${USER_IN_REQUEST}
    <%-- 获取JavaBean对象的name属性 --%> ${USER_IN_REQUEST.name}
    ${USER_IN_REQUEST.pwd}
    3.EL获取List集合对象 ${域名称.键名[索引]}
    <%-- el取值的简化方式(key的值相同时,从域对象范围最小的先获取) --%>
    <%-- 获取集合对象 --%> ${list}
    <%-- 获取集合对象的元素 --%> ${list[0]} ${list[1]} ${list[2]}
    4.EL获取Map集合对象
    <%-- el取值的简化方式(key的值相同时,从域对象范围最小的先获取) --%>
    <%-- 获取集合对象 --%> ${mapBean}
    <%-- 获取map集合对象的bean元素 --%>
    ${mapBean.u1}<br>
    ${mapBean.u2}<br>
    ${mapBean.u3}<br>
    ${mapBean.u4}<br>
    <%--获取集合中mapbean对象的属性--%>
    ${mapBean.u1.name}-----${mapBean.u1.pwd}<br>
    ${mapBean['u1'].name}-----${mapBean['u1'].pwd}<br>
    ${mapBean.u3.name}-----${mapBean.u3.pwd}<br>
    ${mapBean.u4.name}-----${mapBean.u4.pwd}<br>
    
    #EL表达式的运算 1.关系运算符 ==或者eq 等于 ${5==5}或者${5eq5} !=或ne 不等于 ${5!=6}或者${5ne6} <或lt 小于 ${5<6}或者${5lt5} >或gt 大于 ${5>4}或者${5gt4} <=或le 小于等于 ${5<=5}或者${5le5} >=或ge 大于等于 ${5>=5}或者${5ge5} 2.逻辑运算符 &&或and 与运算 ${ 12 == 12 && 12 < 11 } 或 ${ 12 == 12 and 12 < 11 } ||或or 或运算 ${ 12 == 12 ll 12 < 11 } 或 ${ 12 == 12 or 12 < 11 } !或not 非运算 ${ !true } 或 ${not true }
    3.算术运算符
        +              加               ${ 12 + 18 }
        -              减               ${ 18 - 8 }
        *              乘               ${ 12 * 12 }
        /或者div       除               ${ 144 / 12 } 或 ${ 144 div 12 }       
        %或mod         取模             ${ 144 % 10 } 或 ${ 144 mod 10 }
    
    4.empty运算符
       empty运算是判断一个对象或者集合是否为空。返回boolean值。
        *判断字符串,集合,数组对象是否为null或者长度为0
        *${empty 键名}:判断指定键名的值是否为空
        *${not empty 键名}:判断指定键名对应的值是否不为空或者不为0
    

    EL内置对象

        *pageContext
        *requestScope
        *sessionScope
        *applicationScope
        1.在Servlet中取得web应用的名称:request.getContextPath()
        2.在jsp页面上获得web应用虚拟目录()的名称:${pageContext.request.getContextPath}
  • 相关阅读:
    大数据基础---安装ClouderaManager,CDH和Impala,Hue,oozie等服务
    大数据基础---ClouderaManager和CDH是什么?
    大数据基础---通过Flume、Sqoop分析日志
    VS2015设置快捷键
    QGIS添加在线地图
    Python + SQLite + ST_Geometry
    Python 安装 selenium 与 chromedriver.exe
    Python IDLE 编译器 显示代码行号
    Python IDLE 编辑器开启代码自动提示
    Python IDLE编辑器打开后缀名为.py的文件
  • 原文地址:https://www.cnblogs.com/linjing111/p/12803445.html
Copyright © 2020-2023  润新知