JSP--------->jsp中的表达式语言

JSP中的   表达式语言

一、概述:

  • 使用表达式语言可以使得JSP页面中的Scriptlet代码进一减少,使得JSP页面更简洁
  • 表达式语言:Expression Language(EL)
  • 表达式语言是JSP 2.0中新增的功能
  • JSP中表达式语言可以被用于:
    • 访问page/request/session/application范围的属性
      • 属性可以是基本数据类型
      • 属性也可以是集合(如List/Set/Map集合)
      • 属性也可以是一个对象
      • 属性也可以是对象集合
    • 调用JSP九大内置对象中的成员函数
    • 使用表达式语言最大的特点就是如果输出的内容为null,则会自动使用空字符串“”表示  
    • 进行各种数学运算

二、JSP中表达式语言的具体用法:

  • 使用表达式语言访问page、request、session、application范围的属性
    • 语法1:
      <!-- 使用jsp中的表达式语言可以     访问page、request、session、application范围的属性 -->
      
      <h1>${属性名称}</h1>

      运行机制:

      • 按照如下顺序查找该名称的属性:page--->request---->session---->application

      • 一旦查找到相应名称的属性,就停止继续查找,  
      • 所以如果四种范围都存在该名称的属性,那么肯定输出page范围该属性的值
    • 语法2:
      <h1>
          输出page范围属性:${pageScope.属性名}
          输出request范围属性值:${requestScope.属性名}
          输出session范围属性值:${sessionScope.属性名}
          输出application范围属性值:${applicationScope.属性名}
      </h1>

       

    • 语法三:当属性不是基本数据类型,而是一个集合时 

      • 当属性是一个request范围的List集合时
      • 当属性是一个request范围的Map集合时  
    • 语法四:当属性是一个对象时
          • 《java web 实战经典.pdf P316》  
    • 语法五:当属性是一个对象集合时
          • 《java web实战经典.pdf P319》          
              
  • 使用jsp中的表达式语言 调用JSP就大内置对象中的成员方法
    • 语法:
      • 熟记——>表达式中 有一个表达式内置对象,它就是pageContext对象
      • 使用pageContext对象可以获取其他内置对象
      • 通过内置对象可以调用其成员函数
      • <!--下面的代码在表达式中调用JSP内置对象的成员函数:
                    step1:${表达式}
                    step2:pageContext是表达式内置对象
                    step3:在表达式中可以使用pageContext获取其他内置对象如request、session、application
                    step4:使用内置对象可以调用相应的成员函数,但是注意其成员函数的写法,并不像java代码中那样调用相应的函数
        -->
        <h1>
            客户端IP地址:${pageContext.request.remoteAddr}
            SESSION ID:${pageContext.session.id}
            是否是新创建的session:${pageContext.session.new}
        </h1>

         

  • 在jsp表达式中接收传递来的参数
    • 语法:
      <!--接收一个参数
             其功能和request.getParameter("参数名")一致
      -->
      <h1>
          ${param.参数名称}
      </h1>
      
      <!--接收一个含有多个值的参数,如表单元素中多选框就有可能有多个值
            其功能和request.getParameterValues("参数名")一致
      -->
      <h1>
          ${paramValues.参数名[0]}
          ${paramValues.参数名[1]}
          ...
      </h1>

       

    • 运行机制:  
      • 一个页面跳转到另一个页面,其表单元素会作为参数传递至目的页面
      • 在目的页面可以使用request.getParameter()  request.getParameterValues()获取相应的参数的值
      • 也可以使用jsp表达式语言${param.参数名}     ${paramValues.参数名}来获取相应参数的值
      • 这样一来源页面中的内容就被传递到目的页面,并且可以在目的页面中进一步处理
  • jsp表达式语言中的运算符
    • 表达式语言中的运算符:
      • 算术运算符
      • 关系运算符:

      • 逻辑运算符:

      • 其他运算符:

          •       

                
    • 语法:
        •  

           

            

 

posted on 2017-06-12 11:55  LXRM-JavaWeb、ML  阅读(181)  评论(0编辑  收藏  举报

导航