使用 Spring Spring JPA 2.* 使用 OUT 参数调用存储过程

Calling stored procedure using OUT parameter with Spring Spring JPA 2.*

我正在使用 IN 参数调用存储过程 - 它工作正常。

public interface ABCRepository extends JpaRepository<ABC, Integer> {
    @Query(nativeQuery=true, value="exec p_NextSequence :clazName , 1")
    Integer  callSequenceForClaz(@Param ("clazName")String clazName);
}

需要有关如何为 OUT 参数执行此操作的帮助。

请参阅下文link了解如何调用存储过程。

https://dzone.com/articles/calling-stored-procedures-from-spring-data-jpa

简单定义方法注解存储过程名称,将存储过程的输入参数映射为方法参数,将SP的输出参数映射为方法的return类型,Example。

@Repository
public interface EmployeeJPA extends JpaRepository<Employee, Long> {
@Procedure(procedureName = "enroll_employee_program")
public String enrollEmpProgram(Long employeeId, Long programId,  LocalDate createdDate, String createdBy);

}

您可以在存储库上使用@Procedure

@Procedure(procedureName="SP_MP_LOG_CONSULTA",outputParameterName="response")

int called(@Param("name") 名称);

我不得不使用 outputParameterName --> 因为它给我一个未定义的列错误。