Spring通常实现@Inject或@Autowired?

时间:2017-06-05 17:52:45

标签: java spring inject

我有一个通用界面,如下所示:

public interface DaoClass extends Closeable {
}

我有很多接口实现:

public interface PersonDao extends DaoClass {
    Person getPerson(long personNo);
}
public interface BusinessDao extends DaoClass {
    void setAddress(long businessNo, String address);
}

我有这样的功能:

public class DaoClassFactory {
    public static <T extends DaoClass> T create(final Class<T> daoClass) {
        // custom logic to return instance of this daoClass
    }
}

我希望能够有类似的东西:

@Inject PersonDao personDao;
@Inject BusinessDao businessDao;

@Controller工作的顶部,通过调用DaoClassFactory.create()来创建bean,然后在它们上面调用.close()方法来清理起来。

有没有一种通用的方法可以做到这一点而不列出XML中每种类型的单个工厂?我找不到任何办法。

非常感谢!

0 个答案:

没有答案