两个EL语法有什么区别?

时间:2011-02-06 00:23:40

标签: java jsp el

我想在JSP表单中使表单字段稳定,因此我使用:

${param.fieldName}

我试着这样做:

${param["fieldame"]}

并且也有效!

有人可以告诉我有什么区别吗?

2 个答案:

答案 0 :(得分:3)

来自Expression Language Specification Version 2.2 Maintenance Release

  

1.6运营商[].

     

expr-a.identifier-b相当于   expr-a["identifier-b"];那就是   标识符标识符-b用于   构造一个价值为的文字   标识符,然后是[]运算符   与该值一起使用。

答案 1 :(得分:2)

param["fieldName"]中,您可以在引号之间使用任何(有效)字符串。在param.fieldName中你不能拥有它,因为它只能包含对标识符有效的字符。

在这两种情况下,它都映射到查找。什么样的查找取决于“param”解析的类型。