有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

带有Spring的java调用存储过程JPA 2.1存储库

我试图在MySQL调用中调用一个存储过程:“searchContext”

我尝试过解决方案:herehere

但是我怎样才能得到EntityManager的参考资料呢?如果我使用的JPA存储库是这样的:

public interface ActiveContextRepository extends JpaRepository<ActiveContext, Long> {
    ActiveContext findByIdUser(Integer idUser);     
}

当我像这样使用EntityManager时,我得到了空指针:

public class ContextService {
    @PersistenceContext
    protected EntityManager entityManager;

    public EntityManager getEntityManager() {
        return entityManager;
    }

    public Integer getContext(Integer idUser, String date, Double longitude, Double latitude){
             StoredProcedureQuery storedProcedure = entityManager.createStoredProcedureQuery("searchContext");
}

或者像这样:

public class ContextService {

    @Autowired EntityManager entityManager;

    public Integer getContext(Integer idUser, String date, Double longitude, Double latitude){
                 StoredProcedureQuery storedProcedure = entityManager.createStoredProcedureQuery("searchContext");
}

我也尝试过这个解决方案:here 但precompiler在Jpa存储库中给了我一个错误:

"Invalid derived query!No property search found for a type ActiveContext"

非常感谢


共 (0) 个答案