在JSP页面中显示嵌套bean值的最佳方法?

时间:2013-10-21 12:08:20

标签: jsp jsp-tags

我正在尝试理解JSP,并且想知道下面哪个变体更适合在JSP页面中输出嵌套数据。

如果您需要维护网络应用,您希望遇到哪些变体(如果有的话)?为什么?或者是否存在实现同一目标的另一种优越方式?

这是关于遗留应用程序的更改,我仅限于JSP 2.1。请不要建议改用完全不同的技术: - )

1:

<%=mainBean.getMemberOne().getSomeAttribute() %>

2:

${mainBean.memberOne.someAttribute}

3:

<bean:write name="mainBean" property="memberOne.someAttribute" />

备注:对于所有变体,我们都有这个地方:

<jsp:useBean id="mainBean" scope="session" class="com.acme.MainBean" />

1 个答案:

答案 0 :(得分:0)

Don't use scriptlets因为它会使您的代码难以维护且可读性降低。此外,您不需要彼此分离视图和程序逻辑,因此这是最糟糕的:

<%=mainBean.getMemberOne().getSomeAttribute() %>

我想说,其他的是品味问题。我更喜欢${mainBean.memberOne.someAttribute},因为它简短易读。但是,由于Cross Site Scripting攻击,请小心使用此方法。