jsp-EL表达式

2021-02-05 22:16

阅读:744

标签:list()   计算   标签   浏览器   就会   页面   属性   --   找不到   

目录
  • JSP标签技术
  • EL表达式
    • 作用:
    • 域中的对象:
    • EL的使用
      • 常量、表达式、变量
      • 获取常量
      • 获取表达式结果
      • 获取变量
        • 获取作用域中数组或集合中的元素
      • 获取数组或集合元素
        • 获取作用域中map集合中的元素
      • 获取map元素
        • 获取作用域中JavaBean对象的属性值
      • 获取对象中的属性

JSP标签技术

在JSP页面中写入大量的java代码会导致JSP页面中html代码和java代码混杂在一起,会造成jsp页面结构的混乱,导致后期难于维护,并且代码难以复用。

于是在JSP的2.0版本中,sun提出了JSP标签技术,推荐使用标签来代替JSP页面中java代码,并且推荐,JSP2.0以后不要在JSP页面中出现任何一行java代码。

EL表达式

格式:${ 常量/表达式/变量 } (放在EL中的变量得先存入域中,才可以获取变量的值)

作用:

  1. 计算放在其中的表达式的结果,将结果输出在当前位置。

  2. 主要作用:用于从域对象中获取数据,将获取到的数据输出在当前位置。

域中的对象:

pageContextrequestsessionapplication

EL的使用

常量、表达式、变量

获取常量

Hello EL输出到浏览器

${"Hello EL"}

获取表达式结果

如果3>5成立, 输出yes, 否则输出no

${ 3 > 5 ? "yes" : "no" }

可以在或括号里进行运算, 例如;${3 + 5}

获取变量

(变量得先存入中)

在EL中书写变量, 底层会根据变量的名字, 到四个作用域中寻找同名的属性,如果可以找到, 就会输出这个属性对应value值, 如果找不到, 就什么也不输出(也不会报错)
在寻找时, 会按照如下作用域的顺序去找对应的属性, 先->后

pageContextrequestsessionapplication

如果找到就直接返回(即使后面还有也不会再寻找), 如果找不到, 就什么也不输出

jsp对象 EL作用域对象
pageContext pageScope
request requestScope
session sessionScope
application applicationScope

例如:


 
${ name } 
${ sessionScope.name }

结果;(浏览器输出页面)

jack
tom

获取作用域中数组或集合中的元素

获取数组或集合元素

例如:


${names[0]} 
${names[1]}
${list[2]}
${list[3]}

结果: (浏览器页面)

孙尚香
黄忠
王昭君

获取作用域中map集合中的元素

获取map元素

例如:


${map1.name} 
${map1.age}
${map1.addr}

结果: (浏览器页面)

尼古拉斯.赵四
32
中国

获取作用域中JavaBean对象的属性值

获取对象中的属性

例如:


${user.getName()} 
${user.age}

结果:(浏览器页面)

刘德华
18

jsp-EL表达式

标签:list()   计算   标签   浏览器   就会   页面   属性   --   找不到   

原文地址:https://www.cnblogs.com/zpKang/p/13123759.html


评论


亲,登录后才可以留言!