【问题标题】:How to pass a java object to jsp page如何将java对象传递给jsp页面
【发布时间】:2012-03-29 13:40:15
【问题描述】:
我有一个在单击链接时调用的 serveresource 方法。 serveresource 方法从传递的参数中获取输入,并从数据库中检索一行。现在,一行中的所有值都使用 mutator 方法进行了设置。我在 java 对象中拥有一切。我需要将此对象传递给 jsp 页面以在 jsp 页面上打印单行的值。我不确定如何在 jsp 页面中处理该 java 对象,而不是将每个值设置为 serveresource 方法中的属性。需要专家的帮助.. 提前致谢
更新
这是因为我有一个 Ajax 调用,当我设置值时,它处于一个完全不同的生命周期中,这导致了问题。我想通了。
【问题讨论】:
标签:
java
jsp
websphere-portal
【解决方案1】:
您应该在 JSP 中将 java 对象定义为 Bean。
JSP 中的 Bean 可以使用 标准 jsp 标签来定义。并且 使用 和 标准 jsp 标签设置和获取属性。
参考文献:
【解决方案2】:
通常的方法是将其添加到HttpServletRequest对象中,因此:
MyBean myBean = new MyBean();
myBean.setValue("something);
myBean.setAnotherValue("something else");
// ... stuff ...
request.setAttribute("myBean", MyBean);
这可以使用 EL 从 jsp 页面访问,因此:
<table>
<tr>
<td>${myBean.value}</td>
<td>${myBean.anotherValue}</td>
</tr>
</table>
【解决方案3】:
你可以绑定请求对象
In Servlet or JSP
request.setAttribute("strIdentifire", yourJavaObject);
In JSP
YourJavaObjectClass obj = (YourJavaObjectClass)request.getAttribute("strIdentifire");