热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

EL表达式之sessionScope

EL全名为ExpressionLanguageEL语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构:${sessionScope.user.sex}所有EL都是以
EL 全名为Expression Language 

EL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构:

${sessionScope.user.sex}


  所有EL都是以 ${ 为起始、以} 为结尾的。
  上述EL范例的意思是:从Session取得用户的性别。如果使用之前JSP代码的写法如下:
  <%
  User user = (User)session.getAttribute("user");
  String sex = user.getSex( );
  %>


.与 [ ] 运算符

EL 提供 . 和 [ ] 两种运算符来导航数据。下列两者所代表的意思是一样的:

${sessionScope.user.sex}等于${sessionScope.user[
"sex"]}

. 和 [ ] 也可以同时混合使用,如下:

${sessionScope.shoppingCart[
0].price}

回传结果为shoppingCart中第一项物品的价格。

不过,以下两种情况,两者会有差异:

(
1) 当要存取的属性名称中包含一些特殊字符,如. 或 – 等并非字母或数字的符号,就一定要使用 [ ],例如:${user.My-Name }

上述是不正确的方式,应当改为:${user[
"My-Name"] }

(
2) 我们来考虑下列情况:

${sessionScope.user[data]}

此时,data 是一个变量,假若data的值为
"sex"时,那上述的例子等于${sessionScope.user.sex};

假若data 的值为
"name"时,它就等于${sessionScope.user.name}。因此,如果要动态取值时,就可以用上述的方法来做,但. 无法做到动态取值。

 


推荐阅读
author-avatar
pierce2502910693
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有