0
点赞
收藏
分享

微信扫一扫

求救EL表达式的${} 怎么嵌套

王老师说 2022-10-27 阅读 107


  与 [ ] 运算符

  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}。

  因此,如果要动态取值时,就可以用上述的方法来做,但. 无法做到动态取值。求救EL表达式的${} 怎么嵌套

举报

相关推荐

0 条评论