JPA-запрос - я не хочу его через @Query - PullRequest
0 голосов
/ 03 октября 2018

Пользовательский интерфейс проекта для выбора только обязательных полей основной таблицы и ссылочных объектов.

public interface SimpleProjection{
   Long getId();

   interface Location{
     Long getId();
   }
   interface Address{
     String getCity();
   }
}

Объекты

@Entity
public class Simple{
 @Id
 private Long id;
 @OneToOne
 Location mainLocation;
 @OneToOne
 Location tempLocation;
}

@Entity
public class Location{
 @Id
 private Long id;
 private String name;
 //many more
}

Хранилище пружин

public interface SimpleRepository extends JpaRepository<Simple, Long> {
  Optional<SimpleProjection> getById(Long id);
}

Хотя я вызываю метод getById () в репозитории, он выбирает все столбцы связанных сущностей, а не определенную.

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

...