EL

EL表达式

  1  概念:Expression Language  表达式语言

  2  作用 :替换和简化jsp页面中java代码的编写

  3  语法:${表达式}

  4  注意:

    jsp默认支持el表达式,如果要忽略el表达式

      1  设置jsp中page指令中的属性isELIgnored=“true”  忽略当前页面中所有的el表达式

      2  \${表达式}:忽略当前这个el表达式

  5   使用:

    1  运算

      *  运算符

        1  算数运算符:+ - * /  (div)  %(mod)

        2  比较运算符:> < >= <= == !=

        3  逻辑运算符:  &&(and)  ||(or)  !(not)

        4  空运算符:empty

          功能:用于判断字符串、集合、数组对象是否为null或者长度是否为0

           ${empty list}   是否为null,或者长度为0

           ${not empty list} :是否不为null,并且长度>0

    2  获取值

      1  el表达式只能从域对象中获取值

      2  语法:

        1  ${域名称.键名}:从指定域中获取指定键的值

          * 域名称

            1  pageScope  -->  pageContext

            2  requestScope -->  request 

            3 sessionScope -->  session

            4  application  -->  application(ServletContext)

          *  举例:在request域中存储了name=张三   

          * 获取:$(requestScope.name)

          

<% request.setAttribute("name","zhangsan"); %>
${requestScope.name} 

 

        2  ${键名}:表示依次从最小的域中查找是否有该键对应的值,知道找到为止

    3  获取对象:List集合、Map集合的值

      1  对象:${域名称.键名.属性名}

        *  本质上会去调用对象的getter方法

<% user u=new user();
            u.setName("zhangsan");
            u.setAge(5);
            u.setBirthday(new Date());
            request.setAttribute("user",u);
    %>
    
    ${requestScope.user}
    <%--通过的是对象的属性来获取
        *  setter或getter方法,去掉set或get,再将剩余部分,首字母变为小写
        *  setName --> Name --> name
    --%>
    ${requestScope.user.name} 
    ${requestScope.user.birthday}

       2  List集合:${域名称,键名[索引]}

       3  Map集合:${域名称,键名.key名称}

            ${域名称,键名["key名称"]}

  3  隐式对象:

    el表达式中有11个隐式对象

    pageContext:

      获取jsp其他8个内置对象

        ${pageContext.request.contextPath}:动态获取虚拟目录

        

      

posted @ 2022-03-06 20:49  Cuora  阅读(122)  评论(0)    收藏  举报