【发布时间】:2019-11-20 10:02:36
【问题描述】:
我在我的 JSP 中使用 EL。例如
案例一:
<h5>${fgst.userFlag}</h5>
案例 2:
<h5>${fgst.getUserFlag()}</h5>
我想知道,案例 2 是否比案例 1 更安全、更安全?
【问题讨论】:
我在我的 JSP 中使用 EL。例如
案例一:
<h5>${fgst.userFlag}</h5>
案例 2:
<h5>${fgst.getUserFlag()}</h5>
我想知道,案例 2 是否比案例 1 更安全、更安全?
【问题讨论】:
在安全方面绝对没有区别。
请注意,${fgst.userFlag} 根本不访问该字段。在幕后,它将属性名称userFlag 转换为getter 方法getUserFlag(),最后在${fgst} 表示的实例上调用它。换句话说,它与${fgst.getUserFlag()} 完全一样。
您可以通过重命名字段名称来自己确认,同时保持 getter 方法名称不变。您会注意到这两种方法都可以继续工作,并且它们实际上都调用了 getter 方法,这也可以通过在 getter 方法上放置一个调试断点来观察。
【讨论】: