从@NamedStoredProcedureQuery中的存储过程返回值和结果集

时间:2017-09-19 12:12:32

标签: java spring javax.persistence

我想从存储过程中获取返回计数和结果集, 在我的@NamedStoredProcedureQuery中,返回计数是结果行的总数。

我的代码中存储过程的分页需要这个返回计数。

是否可以使用@NamedStoredProcedureQuery?

1 个答案:

答案 0 :(得分:0)

您是返回整个结果集还是分页?如果您获得整个结果集并使用Spring Data,则可以使用返回的List<> size作为返回计数,List将是您的结果集。 Spring Data使用以下模型:

public interface MyDao {
    List<MyModel>  myNamedStoredProcName(
        @Param("param1") double param1, 
        @Param("param2") double param2
        );
}

当自动装配MyDao时,您可以通过函数调用返回列表。

如果您使用的是实际的ResultSet对象,则必须循环遍历整个结果集以获取计数,然后在继续使用之前执行resultSet.beforeFirst()。