使用JSF 2.0 jsf-2.0处理Backing Bean初始化的最佳实践

时间:2010-10-27 11:21:24

标签: java jsf jsf-2

我的支持bean中有一个@PostConstruct init()函数,它执行冗长的数据库查询。

支持bean是@SessionScoped。

每次执行Ajax查询时,我都会点击init()并再次触发数据库查询。

在触发数据库查询之前,是否需要检查init()中的生命周期阶段?或者我应该将细节存储在更持久的对象中,例如当前用户?

祝你好运, 艾伦

1 个答案:

答案 0 :(得分:1)

@PostConstruct bean的

@SessionScoped每个用户会话只执行一次,因此它是初始化bean的正确位置。确保bean确实在会话范围内,并且它的多次执行实际上并非来自不同的用户(=> sessions)