我有类userDAOimpl,我正在使用
@Resource(name="sessionFactory")
public SessionFactory sessionFactory;
我想问一下,除此之外我还需要使用像
这样的setterpublic void setSessionfactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
或
public DAOImpl(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
有一件事让我感到困惑的是,这些如何被称为
答案 0 :(得分:1)
没有会话工厂的DAOImpl实例是否有意义。如果它没有意义,那么它应该在构造函数中。这样,DAOImpl实例一旦构造就处于有效状态,并且永远不会处于无效状态。
编辑:会话工厂应该是私有的,而不是公开的。
答案 1 :(得分:0)
这取决于您使用的是基于属性的还是基于构造函数的依赖项注入。即
如果您使用的是Property,则需要setter。
或
如果您使用的是构造函数,那么在构造函数中是必需的