我有一个Model类,其中包含我编写的getter方法,我想在MongoDB上持久化并检索该值。我怎样才能做到这一点?
假设我有以下类,我希望持久化object1
和internalValue
,即使internalValue
不是类属性。
@Document
public class C {
private SomeObj object1;
public int getInternalValue() {
return object1.doSomething();
// Or, I could retrieve something totally unrelated
// return 42;
}
}
您应该有以下过程来完成:
- 创建一个服务
- 在服务中创建getInternalValue方法
- 创建与文档C相对应的存储库
- 在Service autowire Repository中,并将值保存在任何特定的文档字段中
这个问题有点老,但我碰巧正在寻找这个问题的答案,所以这是我提出的解决方案。
只需添加带有属性的AccessType注释,这样一个名为internalValue的字段也将被持久化,它也可以用于搜索操作。
@Document
public class C {
private SomeObj object1;
@AccessType(PROPERTY)
public int getInternalValue() {
return object1.doSomething();
// Or, I could retrieve something totally unrelated
// return 42;
}
}