struts2:避免在 struts 标签、jsp 中进行硬编码
使用 struts2 时,我可以使用 OGNL 表达式访问 struts2 标记内的会话属性,如下所示:
#session['object_key']
问题是我在不同的页面上使用此表达式,每次硬编码“object_key”字符串。有什么方法可以使用任何类型的命名常量,以便我可以轻松更改用于在会话映射中存储对象的密钥?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
当然,使用静态常量;有几种方法可以解决这个问题。
默认,使用完全限定名称访问:
有关详细信息,请参阅访问 rel="nofollow">OGNL 基础 页面。
另一个技巧是设置一个拦截器,将一类常量推送到值堆栈上,并使用常量“看起来”的 getter。您也可以在操作中执行相同的操作,例如,可以使用基本操作类。
那么 JSP 中所需要的就是:
Sure, use a static constant; there are several options for how to go about this.
Default, access using fully-qualified name:
For details, see Accessing static properties in the OGNL Basics page.
Another trick is to set up an interceptor that pushes a class of constants onto the value stack, with constant-"looking" getters. You could do the same in an action as well, for example, a base action class could be used.
Then all that's needed in the JSP is this: