将一个 mongodb 字段映射到两个 POJO 属性
我的 mongodb 实体有一个属性,我们将其称为 foo
。
当我检索此属性时,我希望在 POJO 的两个不同属性上设置其值,foo
和 bar
因此,如果文档注册为:
{
"_id": "xxxxxx",
"foo": "123",
}
当服务检索时它来自数据库,我希望获取的实体看起来像这样:
{
"_id": "xxxxxx",
"foo": "123",
"bar": "123",
}
有没有一种方法可以仅更改实体类来实现此目的?我尝试了以下方法,但它不起作用
@Getter
@Setter
@Document("test")
public class MyClass {
@Id
private String _id;
@BsonProperty("foo")
private String bar;
private String foo;
}
我正在使用 Spring Webflux 和 Reactive MongoDB 堆栈。
I have a property on my mongodb entity, lets call it foo
.
When I retrieve this property, i want its value to be set on two different properties of my POJO, foo
and bar
So if a document is registered as:
{
"_id": "xxxxxx",
"foo": "123",
}
When the service retrieves it from the DB, i want the fetched entity to look like this:
{
"_id": "xxxxxx",
"foo": "123",
"bar": "123",
}
Is there a way to achieve this only changing the entity class? I tried the following and it didn't work
@Getter
@Setter
@Document("test")
public class MyClass {
@Id
private String _id;
@BsonProperty("foo")
private String bar;
private String foo;
}
I'm using Spring Webflux and Reactive MongoDB stack.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不允许将多个对象字段映射到单个数据库字段,但您可以为
bar
重新定义 getterIt's not allowed to map multiple object fields to a single db field but you can redefine getter for the
bar