如何从会话中访问 JavaBeans 数组
Posted
技术标签:
【中文标题】如何从会话中访问 JavaBeans 数组【英文标题】:How to access an array of JavaBeans from a session 【发布时间】:2015-04-28 04:32:31 【问题描述】:我目前正在尝试在捐赠面板页面中显示用户捐赠列表(用于项目),但是否可以将 JavaBeans 数组传递给会话 bean。我想到的是
private UserDonationBean []u = new UserDonationBean();
我会根据对应的数据库信息初始化bean属性,然后通过setAttribute()把你放到会话对象中。这种方法可行吗?我将如何访问我的 JSP 中的每个 bean?
【问题讨论】:
【参考方案1】:是的,听起来不错。就像你说的那样。 从 JSP 访问取决于您在内部使用的技术。 普通方法是通过 JSP 中始终可用的“会话”变量,除非您明确禁用它:
<% UserDonationBean[] u = (UserDonationBean[]) session.getAttribute("YOUR_KEY")
%>
如果你使用EL,那么它
$sessionScope["YOUR_KEY"]
只是需要考虑的一些小问题: (1) 显然如果你只需要页面,你也可以把它放在请求范围内
(2) 在某些生产环境中,您可能希望 UserDonationBean 是可序列化的(UserDonationBean 实现了可序列化),因为容器可能希望将其跨集群发送,或将其保存到磁盘。
【讨论】:
Eclipse 说它无法解析为类型。我错过了什么吗? 在你的jsp顶部,你有页面导入吗?例如 哦。我以为我会把它和usebean一起使用。谢谢【参考方案2】:private UserDonationBean []u = new UserDonationBean();
HttpSession session = request.getSession(false);
session.setAttribute("beanArray", UserDonationBean);
u = (UserDonationBean[])session.getAttribute("beanArray");
【讨论】:
以上是关于如何从会话中访问 JavaBeans 数组的主要内容,如果未能解决你的问题,请参考以下文章