나는 데이터 저장소의 수를 최소화하려는 시스템 (누가하지 않을 것인가?), 모든 동안 조상 관계를 사용하는 시스템을 가지고 있습니다. 다음과 같은 간단한 클래스를 고려Objectify - Ref의 순서를 저장 <?> -s
public class Ancestor {
@Id
private String id;
private String field;
private Ref<Descendant> descendantRef;
public Descendant getDescendant() {
return this.descendantRef.get();
}
public void setDescendant(Descendant des) {
this.descendantRef = Ref.create(des);
}
}
public class Descendant {
@Id
private String id;
private String field;
@Parent
private Key parent;
}
내 문제 : 나는 조상의 실체를 저장시, 자손 심판을 설정에도 불구하고 null
이 저장됩니다,하지만 난뿐만 아니라 후손을 저장하면, 객관화는 Attempted to save a null entity
를 뿌려줍니다.
내 질문 : 나는 객관화가 @Load
주석과 get()
작업의 순서를 최적화하는 것을 수집, 그래서 시간 조상이 전송되고 있음을, 그래서 그것은뿐만 아니라 save()
작업에 동일한 작업을 수행 할 수있는 방법이 Datastore에서 Descendant Ref가 제대로 채워 졌습니까?
미리 조언 해 주셔서 감사합니다.
많은 조상을 저장할 때 descendantRef에 대한 save() 연산을 최적화 할 수있는 방법을 묻고 있습니까? – Ajeet
@Ajeet Ancestor에서만 save()를 호출하고 Objectify가로드 그래프와 비슷한 "Save Graph"를 최적화하고 Descendant를 먼저 저장하고 Ref <>를 생성하고 Ancestor를 저장하여 그. 이것은 불가능할 가능성이 큽니다. 그 외에도 descendantRef를 자동으로 생성하는 방법이있는 경우 조상이 참조로 저장 될 때까지 ... –