使用 java 在 Micronaut 中将 MongoDb ObjectId _id 更改为字符串
Posted
技术标签:
【中文标题】使用 java 在 Micronaut 中将 MongoDb ObjectId _id 更改为字符串【英文标题】:Change MongoDb ObjectId _id to string in Micronaut using java 【发布时间】:2021-03-18 02:15:39 【问题描述】:我有下面的 Pojo 类的 mongo 实体
public class Product
@BsonProperty("_id")
@BsonId
private ObjectId id;
private String name;
private float price;
private String description;
当我按照以下代码获取 mongo 结果时
var item = Flowable.fromPublisher(this.repository.getCollection("product", Product.class).find()).blockingIterable();
id id 映射类似这样的东西
但是,在数据库中,id 是这样的
如何以正确的方式映射此 id,我正在使用带有 java 15 的 Micronaut 框架
【问题讨论】:
docs.mongodb.com/manual/reference/bson-types/#objectid 在我看来是正确的。如果你想达到同样的效果,我想你应该试试:javadoc.io/doc/org.mongodb/bson/2.7.2/org/bson/types/… value.toString() 对我有用。 【参考方案1】:你可以添加简单的getter:
@JsonGetter
public String getObjectId()
return id.toString();
【讨论】:
以上是关于使用 java 在 Micronaut 中将 MongoDb ObjectId _id 更改为字符串的主要内容,如果未能解决你的问题,请参考以下文章
在 GCP 上运行基于 Java 的 API 后端(Spring Boot、Micronaut、Quarkus)最经济有效的方法是啥?
如何为 graphql-java-servlet 和 Micronaut 控制器配置 GraphQL servlet 端点?