表达式语言

       我们现在已经了解了MVC开发的模式,也知道我们的JSP就是用来实现表示层的,不应该有太多的java代码。

       在如今的MVC模式下,我们认为一个合格的JSP页面,应该只有三种代码:

              接收属性

              判断语句

              迭代输出

       而表达式语言就是为了让JSP页面能否符合我们MVC规范化并让我们输出更加简单而产生的语言。

       ${属性名称}

       如果没有表达式语言,我们在接受一个属性的时候,还要对属性进行一个是否为空的判断操作。否则万一是空的话,会输出一个null。但如果使用${}表达的话,当出现空的时候,就会用空字符串来代替。而且表达上看起来也较为简洁。

       当出现多个同名的属性时,将输出作用范围最小的属性。

       使用表达式还接受VO对象,可以让JSP不用导入VO类。只需要将VO对象从servlet中传递过来,可以直接用$(对象名.属性);来接收。

       在这个表达式里,可以使用常见运算符,而且会自动转型。这一点算是比较方便。但是不要依赖于表达式的运算处理。稍微复杂一点的,咱们就不要放到JSP里面了。它就是用来显示的,加入几个简单的运算就已经足够了。

 

       内置对象

       如上一节中,如果有多个同名不同范围的属性都需要输出,那该怎么办呢? EL(表达式语言)提供了若干个内置对象。恰好,这里就可以使用其中的四个对象。比如说,我想要输出request范围的那个属性,则只需要${requestScope.属性名称}即可。

       但EL提供的最有用的内置对象还是pageContext。在JSP里也学过,用这个对象可以调用其它几个对象的方法。所以在EL中,也就没有提供其它的几个范围对象了。直接通过pageContext来调用一些方法,完成获得IP地址和session值等操作。

       还有两个内置对象是param和paramvalues,这两个对象是用来接收传递过来的参数或者数组的。如果是一个参数时,使用${param.参数名}接收,如果是一个数组时,用${param.参数名[下标]}接收。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值