【发布时间】:2013-08-26 02:19:09
【问题描述】:
为了在会话中保留有关用户的基本信息(安全角色、个人数据等),我创建了一个 AppSession bean,我想知道在每个会话中注入是否是一种不好的做法支持 bean 该会话 bean 的引用。
例如,在请求范围的 bean 中代替 this:
@ManagedBean
@RequestScoped
public class MyRequestBean {
@ManagedProperty("#{appSession.user}")
private User user;
@ManagedProperty("#{appSession.roles}")
private Roles[] roles;
}
我想要这样的东西......
@ManagedBean
@RequestScoped
public class MyRequestBean {
@ManagedProperty("#{appSession}")
private AppSession appSession;
}
...并使用 appSession 检索用户和角色数据。
你怎么看,这里有一些不好的做法吗?
PS:对不起,我不是英语母语者
【问题讨论】:
-
从前到后。您应该将 bean 注入会话中,并相互注入,而不是相反。您实际上根本不需要会话本身。
标签: session jsf-2 managed-bean