直接在EL中访问Java类的字段
如果 Java 类的 getter 不存在,有没有办法使用 EL 访问该字段?
例如,假设我有一个 Java 类,其中有一个名为 foo
的字段。我知道,如果我在名为 getFoo()
的类中还有一个方法,我可以使用以下语法在 jsp 页面上执行此操作:
object.foo
但是,假设 getFoo()
确实如此不存在(并且我无法创建它,因为我无权访问 Java 类)。那么我如何在 jsp 中使用 EL 访问 foo 字段呢?
Is there any way to access a field of a Java class using EL if a getter for that field does not exist?
For example, let's say I have a Java class with a field called foo
. I know that if I also have a method in the class called getFoo()
I can do this on a jsp page using this syntax:
object.foo
However, let's say getFoo()
does not exist (and I have no way of creating it because I do not have access to the Java class). How then can I access the foo
field using EL in my jsp?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不。JSP EL 对符合 javabean 的类的要求非常严格。您的领域需要一个吸气剂。
也许您可以将该对象包装在另一个具有 getter 的类中,该类具有 getter,并且通过反射获取字段。
No. JSP EL is very strict in its requirement for javabean-compliant classes. You need a getter for your field.
Perhaps you can wrap the object in another class that does have a getter, and which fetches the field by reflection.