Поддерживает ли Spring Data JDBC соединения между сущностями? - PullRequest
0 голосов
/ 09 октября 2018

Как я прочитал в документации, Spring Data JDBC поддерживает создание запросов, например Spring Data JPA

Например: findByProperty(Property property)

Мой вопрос:

Имеет ли SpringData JDBC поддерживает ситуацию, когда мы создаем запрос и соединяем две (или более) сущности, используя их свойства, чтобы найти результат, как в Spring Data JPA?

Пример:

@Entity
class Person {
  private final @Id Long id;
  private final Car car;
}

@Entity
class Car {
  private final @Id Long id;
  private String color;
}

interface PersonRepository extends CrudRepository<Person, Long> {
  List<Person> findByCarColor(Color red);
}

interface CarRepository extends CrudRepository<Car, Long> {
}

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

1 Ответ

0 голосов
/ 09 октября 2018

Боюсь, вы неправильно прочитали документацию.

Вывод запроса не поддерживается в версии 1.0 Spring Data JDBC.Это, безусловно, будет добавлено в недалеком будущем.

Недоразумение связано с тем фактом, что вся документация Spring Data начинается с общей части, в которой описаны принципиальные функции, доступные для модулей.Эта часть одинакова для всех модулей.А затем модуль специфическая часть, которая описывает реальные функции.К сожалению, тот факт, что Query Derivation не поддерживается, можно вычесть только из того факта, что он не упомянут в специфической части модуля.

Как только эта функция появится, она, скорее всего, будет поддерживать запросы между сущностями, но, по крайней мере,вначале только для сущностей одного и того же агрегата.

Концепция агрегатов чрезвычайно важна для Spring Data JDBC, поэтому в блоге есть статья об этой концепции и ее последствиях для Spring Data JDBC, который я настоятельно рекомендую к прочтению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...