Spring Data MongoDB: "주체 관계"를 구현하는 방법은 무엇입니까?
비관계형 데이터베이스에서 관계를 구현하려고 하니 이 질문의 제목이 상당히 모순됩니다.:)
그러나 제가 의미하는 것은 MongoDB와 함께 작동하는 응용 프로그램 모델 클래스의 엔티티 간의 연결을 정의하는 방법입니다.
자주 사용하는 JPA 관련 작업@ManyToMany
또는@OneToMany
개체 간의 관계를 정의하는 주석입니다.Spring Data MongoDB에도 비슷한 것이 있습니까?
MongoDBI를 연구하면서 이 연관성에 대한 두 가지 가능한 접근법이 있다는 것을 깨달았습니다.참조 및 포함된 데이터.
Spring Data에서 사용하는 것은 무엇입니까?연결 모드를 구성할 수 있습니까?
@DBref 주석을 사용하여 참조된 클래스를 별도의 컬렉션에 유지할 수 있습니다. 그렇지 않으면 문서가 동일한 문서(json)에 유지됩니다.DBEf를 사용하려면 mongodb 드라이버에 대한 추가 쿼리가 필요합니다. 성능 문제를 분석하려면 이를 고려해야 합니다.
@DBref - 필드에 적용되어 com.mongodb를 사용하여 저장할 것임을 나타냅니다.DBref.
7.3.4 DBefs 사용 매핑 프레임워크는 문서에 포함된 하위 개체를 저장할 필요가 없습니다.또한 해당 문서를 별도로 저장하고 DBef를 사용하여 해당 문서를 참조할 수 있습니다.MongoDB에서 객체를 로드하면 해당 참조가 열심히 해결되고 마스터 문서에 내장된 것처럼 동일하게 보이는 매핑된 객체가 반환됩니다.
@OneToMany 및 @OneToOne 주석 지원을 제공하여 관계를 구현할 수 있는 RelMongo 프레임워크를 사용할 수 있습니다.
관계가 다음을 기반으로 하지 않는 경우dbref
사용할 수 있습니다.@DocumentReference
https://spring.io/blog/2021/11/29/spring-data-mongodb-relation-modelling
언급URL : https://stackoverflow.com/questions/29303916/spring-data-mongodb-how-to-implement-entity-relationships
'programing' 카테고리의 다른 글
excel vba에서 글로벌 변수의 수명은 얼마입니까? (0) | 2023.06.29 |
---|---|
오라클에서 열의 가장 긴 행 길이 찾기 (0) | 2023.06.29 |
푸시하기 전에 여러 커밋을 하나로 결합 (0) | 2023.06.29 |
테이블에서 다른 테이블의 행당 여러 행 가져오기 (0) | 2023.06.29 |
iAsyncCursor는 mongodbc# 드라이버와의 반복에 어떻게 사용됩니까? (0) | 2023.06.29 |