我正在尝试升级到 spring-boot 2.3.6。我正在使用 spring-data MongoRepositories,没有直接调用 MongoClient 或 MongoClient。
获取异常:
Caused by: org.bson.codecs.configuration.CodecConfigurationException: The uuidRepresentation has not been specified, so the UUID cannot be encoded.
at org.bson.codecs.UuidCodec.encode(UuidCodec.java:72)
at org.bson.codecs.UuidCodec.encode(UuidCodec.java:37)
at org.bson.codecs.EncoderContext.encodeWithChildContext(EncoderContext.java:91)
at org.bson.codecs.DocumentCodec.writeValue(DocumentCodec.java:198)
at org.bson.codecs.DocumentCodec.writeMap(DocumentCodec.java:212)
at org.bson.codecs.DocumentCodec.encode(DocumentCodec.java:154)
at org.bson.codecs.DocumentCodec.encode(DocumentCodec.java:45)
尝试过定制
@Bean
public MongoClientSettingsBuilderCustomizer mongoDBDefaultSettings() {
return builder -> {
builder.uuidRepresentation(UuidRepresentation.JAVA_LEGACY);
};
}
没有帮助,同样的例外。
在 spring-boot 2.3.6 中自定义 UUID 编解码器的正确方法是什么?
谢谢。
在 Spring Boot application.properties 上简单地告知:
spring.data.mongodb.uuid-representation=standard
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)