Я все еще пытаюсь понять, что именно я спрашиваю, но это последствия из обсуждения в офисе. Таким образом, дилемма заключается в том, что в наборе сопоставлений, стремящемся к репозиторию, определенному для сущности, к которой относится сопоставление, создается ссылка. Некоторое время это нормально, но в некоторых случаях я предпочел бы, чтобы объект получил себя. Если для этого объекта не существует репозитория, то это будет происходить с помощью стратегии надежной выборки. Идеально было бы, если бы я мог пройти в параметре, и существование этого репозитория исчезнет или появится снова.spring data rest restoas динамически скрывать репозиторий
ответ
Не полностью следующее, но репо существует или нет. Если вы хотите иметь доступ к объектам типа X независимо от других типов сущностей, вам необходимо определить репо для типа X.
Я думаю, вы могли бы достичь чего-то подобного, используя projections.
Таким образом, вы определяете определение репозитория для своего объекта объединения. По умолчанию Spring data rest будет просто отображать ссылку на этот объект и не встраивать его в ответ.
Затем вы определяете проекцию с геттером для вашего связанного объекта. Вы можете выбрать на стороне клиента, если хотите проецировать, добавив параметр запроса projection
.
Так позволяет сказать, что у вас есть человек с адресом - экспортированный хранилище существует для лица и адрес:
@Entity
public class Person {
@Id @GeneratedValue
private Long id;
private String firstName, lastName;
@OneToOne
private Address address;
…
}
interface PersonRepository extends CrudRepository<Person, Long> {}
interface AddressRepository extends CrudRepository<Address, Long> {}
Ваша проекция может выглядеть следующим образом:
@Projection(name = "inlineAddress", types = { Person.class })
interface InlineAddress {
String getFirstName();
String getLastName();
Address getAddress();
}
И если вы называете http://localhost/persons/1?projection=inlineAddress
у вас есть встроенный адрес, и по умолчанию он просто связан.
- 1. Spring Data Rest пользовательский репозиторий BCCrypt пароль
- 2. Spring Data-Rest + Spring MVC
- 3. Spring Data Rest & projectsions
- 4. Rest docs with Spring data Rest для Spring-data-couchbase
- 5. Spring Data Rest против Spring Data Rest WebMvc
- 6. Spring Data Rest
- 7. Spring Data Rest - Кэширование
- 8. Spring DATA JPA Rest
- 9. Spring Data Rest FetchType
- 10. Spring Data Rest Binding
- 11. Spring Spring MVC и Spring Data Rest
- 12. Spring-Data-Rest с Dynamic Автоматическое Repository
- 13. Spring Data Rest Пользовательские ссылки на ресурс
- 14. Mock Spring Data Rest Repository
- 15. Spring Data Rest Content Type
- 16. Spring Data REST - Исключено Подтипы
- 17. Spring Data Rest - Soft Delete
- 18. Spring Data Validation Rest Путаница
- 19. Spring Data REST UPSERT Statement
- 20. Spring Data Rest and Hateoas
- 21. Spring Data Rest границы транзакции
- 22. Spring Data Rest Пользовательского контроллер
- 23. Spring Data Rest - контентное поле?
- 24. Spring-Data-Rest пейджинговой атрибутов
- 25. Ассоциация в Spring Data Rest
- 26. Spring Data Rest and Cors
- 27. Добавление spring-data-rest ontop spring-data-jpa
- 28. Spring data rest, java.util.Date в url param?
- 29. Инъекционный репозиторий с использованием Spring-Data-Solr
- 30. spring-data-cassandra Как реализовать общий репозиторий