类型重命名后如何使用 Spring Data MongoDB 类型信息更新现有文档?

jac*_*cob 3 mongodb mongo-java spring-data-mongodb

我正在将 mongodb 与 spring 一起使用,并且我有一些从一个基类派生的子文档,mongo 使用“_class”属性来找出要转换为的正确类型,但现在我更改了包名称,集合仍然有旧包名称的文档,我如何告诉 mongo 进行哪些自定义转换?

roy*_*oyB 6

首先,下次要将您的package/class名称与_class变量分离,请@TypeAlias("name")在您的 pojo 上使用:注释。然后_class将具有值"name

我认为最简单的解决方案是更新您的 pojoTypeAlias_class使用它的新值更新您的收藏字段

Type mapping在这里阅读:http : //docs.spring.io/spring-data/data-mongodb/docs/current/reference/html/#mongo-template.type-mapping