1

JPA 编程新手在这里。试图找出从 JPA 调用 sql server 中存储过程的最佳方法。

我看到了很多使用 createSQLQuery 的例子。但我正在考虑使用 JPA 2.1 提供的 createStoredProcedureQuery

存储过程只接受一个输入参数并返回一个 select 语句(未声明输出)

PROCEDURE X
@parametername varchar
as
select
a.name
from a where a. id=parametername

如何使用 createStoredProcedureQuery 做到这一点?我发现的示例需要有一个输出参数,但这里没有输出参数?我猜我错过了什么。有什么例子吗?

4

1 回答 1

1

您可以执行您的存储过程,如下所示:

StoredProcedureQuery query = entityManager.createStoredProcedureQuery("procedure_name");
query.registerStoredProcedureParameter("param1", Integer.class, ParameterMode.IN);
query.setParameter("param1", 123);
query.execute();
List result = query.getResultList();
于 2015-12-21T11:26:58.790 回答