我有一个SessionScoped命名Bean,如下所示:
@Named("userBean")
@SessionScoped
public class UserBean implements Serializable {
.....
@PostConstruct
public void init()
{
...call some methods to fetch some data
}
现在的问题是,在部署应用程序时,将调用init((,并且在整个会话中不会再次调用它。我的要求是只有在需要初始化bean时才调用init((。如何做到这一点?
@Named("userBean")
@SessionScoped
@Lazy
public class UserBean implements Serializable
无论你在哪里有@Autowired UserBean
使其成为
@Lazy
@Autowired
UserBean userbean;