Ref<?> 从对象修改一个字段并在保存包含对象时保存它
Ref<?> modify a field from object and save it when saving containing object
我正在为 Google 云数据存储使用 Objectify。
我正在调查 Ref<?>
并尝试查看是否可以使用此注释从对象修改 属性,但它似乎没有保存在我的数据存储中。
示例:
我有这些 类,我将排除 setter 和 getter。
@Entity
class Car {
@Id Long id;
@Load Ref<Person> driver; // Person is an @Entity
}
class Person {
@Id Long id;
String name;
}
如果我这样做
Car car = new Car();
car.driver = Ref.create(driverKey);
ofy().save().entity(car).now();
Car fetched = ofy().load().entity(car).now();
fetched.driver.get().setName("Pepito");
ofy().save().entity(car).now();
它不会改变数据库中 Person
的名称。
有什么办法可以实现吗?
谢谢。
引用只是 - 对具有不同生命的不同实体的引用。没有级联保存。如果要保存驱动程序,请明确执行。
我正在为 Google 云数据存储使用 Objectify。
我正在调查 Ref<?>
并尝试查看是否可以使用此注释从对象修改 属性,但它似乎没有保存在我的数据存储中。
示例:
我有这些 类,我将排除 setter 和 getter。
@Entity
class Car {
@Id Long id;
@Load Ref<Person> driver; // Person is an @Entity
}
class Person {
@Id Long id;
String name;
}
如果我这样做
Car car = new Car();
car.driver = Ref.create(driverKey);
ofy().save().entity(car).now();
Car fetched = ofy().load().entity(car).now();
fetched.driver.get().setName("Pepito");
ofy().save().entity(car).now();
它不会改变数据库中 Person
的名称。
有什么办法可以实现吗?
谢谢。
引用只是 - 对具有不同生命的不同实体的引用。没有级联保存。如果要保存驱动程序,请明确执行。