我正在从Spring Boot 2.0.0迁移到2.1.1。迁移后,我面临的几个问题之一是带有某些字段和@version的文档的InvalidPersistentPropertyPath。以前在Spring Boot 2.0.0中可以正常工作
以下是我要保存在mongo db中的示例文档:
@Document
@Data
@NoArgsConstructor
public class Report implements Serializable {
@Id
protected String id;
@NotNull
@Field("ReportName")
protected String reportName;
@Field("IA1Value")
private Long iA1Value = 0L;
@Field("IA2Value")
private Long iA2Value = 0L;
@Version
private Long version;
public Report(String reportName) {
this.reportName = reportName;
}
}
我编写了一个测试用例以读取并保存到mongo DB。
org.springframework.data.mapping.context.InvalidPersistentPropertyPath: 在类上找不到属性“ IA1Value” com.experiments.migration.mongo.Report!你的意思是: IA2Value,IA1Value,iA2Value,iA1Value?
但是如果@Version被注释,它就可以工作。...
我想知道与@Version有什么关系。
整个示例都在:
https://github.com/KencyK/spring-boot-migration
注意:请请勿建议保留字段名称。因为我知道那会解决。我想知道如果删除@Version为何能奏效。
我还尝试了在春季启动版2.0.0中使用的旧版Lombok