在我的春节+ JPA /休眠+检票程序,我有一个QueryBuilder的豆,我想在我的DAO中的一个产生与标准API的帮助下,键入的查询使用方法:EntityManager的注入 - NullPointerException异常
@Service(value="inboxQueryBuilder")
public class InboxQueryBuilder {
@PersistenceContext
EntityManager em;
CriteriaBuilder cb;
public InboxQueryBuilder() {
cb = em.getCriteriaBuilder();
}
public TypedQuery<App> getQueryForApps(AppSearchObject aso) {
...
}
...
}
然而,当我运行应用程序,我得到一个空指针异常线路:
cb = em.getCriteriaBuilder();
即EntityManager的不会被注入。你知道为什么吗?
而且,这是正确的使用和线程安全的,或者我应该实例我InboxQueryBuilder每个查询?在这种情况下,我还应该注入EntityManager还是应该将它作为构造函数参数传递(InboxQueryBuilder将为DAO中的每个查询都实例化,其中包含EntityManager的注入实例)?
如何创建InboxQueryBuilder?在给出的例子中为 – willcodejavaforfood 2010-11-09 10:10:35
,它是一个春天的豆子。但我不知道如果把它变成单身人士是好的。 – 2010-11-09 10:14:08
不要在弹簧项目中使用单身人士。改用spring singleton bean。 – 2010-11-09 10:32:25