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

本文介绍了JSP 2.0中的表达式语言(EL)功能,包括如何使用EL访问不同作用域的属性、调用内置对象的方法及处理表单参数等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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表达式语言中的运算符
    • 表达式语言中的运算符:
      • 算术运算符
      • 关系运算符:

      • 逻辑运算符:

      • 其他运算符:

          •       

                
    • 语法:
        •  

           

            

 

转载于:https://www.cnblogs.com/lxrm/p/6992178.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值