나는 기존의 구글 애플 리케이션 엔진 자바 응용 프로그램을 jpa와 함께 실행하고 지금은 많은 다른 목적으로 객체 화하려고합니다.구글 앱 엔진 자바 대체 jpa @ OneToMany/@ ManyToOne with objectify
현재 응용 프로그램에는 엔티티의 아래 표현이 있습니다.
Class Parent{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Key key;
@OneToMany(cascade=CascadeType.ALL, mappedBy="parent")
private List<Child> childs = null;
}
Class Child{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Key key;
@ManyToOne
private Parent parent;
}
위의 표현을 어떻게 Objectify에서 얻을 수 있습니까? objectify4를 사용하고 있습니다.
@Parent를 본 적이 있지만 부모를 가져 오는 동안 하위 항목의 목록을 직접로드 할 수없는 것 같습니다.
감사합니다,
Ramesh.V
덕분에 가능 부모에서 자식 키/참조를 저장하지 않고 부모로부터 자식 개체를 가져 오는 것입니다. –
어소시에이션은'Key's에 의해 표현되므로'Parent' 또는'Child'에서 연관이 필요합니다. 둘 다 가지고 있다면 유지 보수하기가 어렵고 종종 유용하지 않은 양방향 연관을 만듭니다. 'Parent '에'Key' 배열을 놓을 수 있습니다. 그런 다음 Objectify의 필터링 방법을 사용하여 모든 'Child'객체를 특정 '부모'키로 가져와야합니다. 이것은 특정 기준 또는 페이징에 의해 더 많이 필터링되어야하는 많은 수의 하위 항목이있는 경우에 특히 유용합니다. –
그러나 JPA는 부모 또는 자식 키를 저장하지 않고 어떻게 작동합니까? 기존의 GAE Java 응용 프로그램은 JPA를 사용하며 데이터 스토어에는 하위 또는 상위에 저장된 키가 없습니다. 그리고 부모 자식 관계 만 가지고 부모 나 자식 모두에 키가 저장되지 않습니다. 이제 내 변경 사항이 기존 데이터베이스에 영향을주지 않습니다. 내가 어떻게 해. 자세한 설명을 주셔서 감사합니다. –