以下是课程StageOrmModel.class
中的注释@prePersist方法:
...
private String product;
private List<ProductOrmModel> _product;
@PrePersist
void prePersist(){
System.out.println("I am in prePersist");
Gson gson = new Gson();
product = gson.toJson(_product);
this._product = null;
}
...
我希望在将文档保存到mongodb之前将_product
字段序列化为json字符串,但是当通过以下代码片段调用方法DataStore.save()
时:
datastore.save(stageOrmModel)
我发现不仅_product
未被设置为null(在这种情况下应该预期未包含在已保存的文档中),而且String product
未被解析,并且控制台记录System.out.println("I am in prePersist")
从未打印过。
哪些我错了?
答案 0 :(得分:0)
最后,我想出了这个:
当导入由IDE生成时,我导入2,3,1
而不是javax.persistence.PrePersist
,我没有检查。
这是一个粗心的错误,希望这会提醒其他人坚持同样的问题。