这里是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执行此操作?我发现的例子需要一个输出参数,但这里没有输出参数?我猜我错过了什么。有一些例子吗?
答案 0 :(得分:1)
你可以像这样执行你的存储过程:
StoredProcedureQuery query = entityManager.createStoredProcedureQuery("procedure_name");
query.registerStoredProcedureParameter("param1", Integer.class, ParameterMode.IN);
query.setParameter("param1", 123);
query.execute();
List result = query.getResultList();