Выполнить два запроса @NamedNativeQuery для одного и того же класса сущностей

Я хочу определить два @NamedNativequery на классе сущности. При связывании для определения затмения выдает ошибку.

Дублирующая аннотация неповторяемого типа @NamedNativeQuery. Только типы аннотаций с пометкой @Repeatable могут использоваться несколько раз на одной цели.

Из этой ошибки я знаю, что мы не можем определить два определения двух @NamedNativeQuery класса сущностей, например

    @Entity
    @Table(name = "abc")
    @NamedNativeQuery(name = "ABC.getSomeMethod1" query = "some_query",resultSetMapping ="abcDTO")//1st name query
   // @NamedNativeQuery(name = "some_name" query = "some_query",resultSetMapping ="some_dto")//try to define second query , but gives error
    public class ABC {

      }

Я использую весенний репозиторий на уровне дао, чтобы вызвать метод, который связывается с этим запросом

  public interface SomeInterface extends JpaRepository<ABC, Long> {


    @Query(nativeQuery =true)
   List<ABCDTO> getSomeMethod1(@Param("someParam1")  long someParam1, @Param("someParam2") String someParam2);


   }

Senario - это то, что я хочу запустить 1-й собственный запрос sql (который работает нормально), а затем выполнить 2-й собственный запрос sql (хочу запустить его также из того же). Как решить это или Какое возможное решение.

Если таким образом я не могу выполнить два нативных SQL-запроса, то есть ли другой способ добиться этого.

1 ответ

Решение

Вы можете определить несколько именованных запросов, как это

@NamedNativeQueries({
    @NamedNativeQuery(name = "ABC.getSomeMethod1" 
                      query = "some_query",resultSetMapping ="abcDTO"
    ),
  @NamedNativeQuery(name = "some_name" 
     query = "some_query",resultSetMapping ="some_dto"
    )
})

Затем на бизнес-уровне под транзакцией вы можете вызывать эти два запроса один за другим,

Если это простое соединение между двумя объектами и лучше выбрать и отобразить, перейдите к объединению. Всегда не забывайте иметь индекс этих столбцов в таблице;)

Другие вопросы по тегам