Как выполнить хранимую процедуру с помощью аннотации JPA @NamedStoredProcedureQuery - PullRequest
1 голос
/ 23 сентября 2019

Как преобразовать выполнение этой процедуры с помощью @NamedStoredProcedureQuery?

У меня есть этот SQL, все в порядке!

SQL (все работает нормально):




USE [INTEGRADOR]
GO

DECLARE @return_value int

EXEC    @return_value = [dbo].[SP_VW_PEDIDOSDECOMPRA_SGM]
        @CODIGO = 71648

SELECT  'Return Value' = @return_value 

GO


В Java я попробую это, но не работаю.idUsuarioAutenticado is @CODIGO = 71648


JAVA (ошибка при компиляции):


@NamedStoredProcedureQuery(
            name = "listarComprasMicrosigaProc", 
            procedureName = "INTEGRADOR.DBO.SP_VW_PEDIDOSDECOMPRA_SGM", 
            resultClasses = AcompanhamentoCompraPortalEntity.class, 
            parameters = {
                @StoredProcedureParameter(mode = ParameterMode.IN, type = Long.class)
            }
        )
    public List<AcompanhamentoCompraPortalEntity> listarComprasMicrosigaProc(@Param("idUsuarioAutenticado") Long idUsuarioAutenticado);

Не компилируется.

Я получил эту ошибку:

Аннотация @NamedStoredProcedureQuery запрещена для этого местоположения

Мой импорт (Java):



import java.util.List;
import java.util.Set;

import javax.persistence.NamedStoredProcedureQuery;
import javax.persistence.StoredProcedureParameter;

import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...