Jackson 为保存的引用生成 id
Jackson generate id for saved references
在我的项目中,一个 class 引用另一个 class。
使用 Jackson 保存这个 class 时,我想保留对另一个 class 的引用,它也被保存了。
为此,我在引用的 class 中有一个名为“id”的字段并使用此注释:
@JsonIdentityInfo(scope = ReferencedClass.class, generator = ObjectIdGenerators.PropertyGenerator.class, property="id")
在构造函数中传递 id 时这样做效果很好,但我正在创建未知数量的 ReferencedClass
es。
有没有办法让 Jackson 自动生成 id?
我想知道参数generator = ObjectIdGenerators.PropertyGenerator.class
是什么意思。
我在任何地方都找不到解决这个问题的方法。
我没有找到适合这种情况的解决方案,所以在我的主要保存对象中,我最终使用了以下代码:
@JsonProperty private long generatedId = 0;
public long generateId() {
return generatedId++;
}
在我的项目中,一个 class 引用另一个 class。
使用 Jackson 保存这个 class 时,我想保留对另一个 class 的引用,它也被保存了。
为此,我在引用的 class 中有一个名为“id”的字段并使用此注释:
@JsonIdentityInfo(scope = ReferencedClass.class, generator = ObjectIdGenerators.PropertyGenerator.class, property="id")
在构造函数中传递 id 时这样做效果很好,但我正在创建未知数量的 ReferencedClass
es。
有没有办法让 Jackson 自动生成 id?
我想知道参数generator = ObjectIdGenerators.PropertyGenerator.class
是什么意思。
我在任何地方都找不到解决这个问题的方法。
我没有找到适合这种情况的解决方案,所以在我的主要保存对象中,我最终使用了以下代码:
@JsonProperty private long generatedId = 0;
public long generateId() {
return generatedId++;
}