两种 EL 语法有什么区别?

发布于 2024-10-16 05:10:10 字数 177 浏览 3 评论 0原文

我想让 JSP 表单中的表单字段稳定,所以我使用:

${param.fieldName}

我尝试这样做:

${param["fieldame"]}

并且也有效!

有人能告诉我有什么区别吗?

I want to make form fields stable in JSP forms so I use:

${param.fieldName}

I tried to make like this:

${param["fieldame"]}

and also works!

Can someone tell me what is the difference?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

昨迟人 2024-10-23 05:10:10

表达式语言规范版本 2.2 维护版本开始:

1.6 运算符[].

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

From Expression Language Specification Version 2.2 Maintenance Release:

1.6 Operators [] and .

expr-a.identifier-b is equivalent to
expr-a["identifier-b"]; that is, the
identifier identifier-b is used to
construct a literal whose value is the
identifier, and then the [] operator
is used with that value.

酒浓于脸红 2024-10-23 05:10:10

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

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

In the param["fieldName"] you can have any (valid) string between the quotes. In the param.fieldName you cannot have that, as it can only contain the characters that are valid for an identifier.

In both cases it maps to a lookup. What kind of lookup depends on what type "param" resolves to.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文