【发布时间】:2015-04-04 20:58:14
【问题描述】:
我有一个小型 Spring MVC 应用程序,其中一些类依赖于 User 对象。
我想将它声明为@Component,这样我就可以使用@Autowired 注解从任何地方访问这个bean。
@Component
public class MyUser implements User {
// private fields
// getters and setters
public void fillByName(String username) {
userDao.select(username);
}
}
显然,用户对象对于每个用户来说应该是唯一的。我使用 Spring Security,所以我的 SecurityContextHolder 中有用户名,我可以用它来初始化 User 对象。
初始化的最佳实践是什么?我应该像会话范围的bean一样声明它吗?或者我应该将它保留为单例类并只更新每个请求的所有字段?或者我应该为每个请求从 Controller 类创建一个新的 User 对象?
【问题讨论】:
标签: java spring spring-mvc