作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
宇宙Java SDK
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-cosmos</artifactId>
<version>4.1.0</version>
</dependency>
我们希望在将 POJO 序列化为 JSON 时使用自定义日期格式,目前它仅转换为 long。 @JsonFormat( ...) 可以放在 getter 上以提供日期格式,但需要将其添加到所有字段中,并且可能需要进行一些其他自定义。如何为cosmos客户端提供自定义的ObjectMapper?
最佳答案
cosmos 转换器类如下所示:
public MappingCosmosConverter (
MappingContext<? extends CosmosPersistentEntity<?>, CosmosPersistentProperty> mappingContext,
@Qualifier(Constants.OBJECT_MAPPER_BEAN_NAME) ObjectMapper objectMapper) {
this.mappingContext = mappingContext;
this.conversionService = new GenericConversionService();
this.objectMapper = objectMapper == null ? ObjectMapperFactory.getObjectMapper()
: objectMapper;
}
因此,如果您提供这样的 bean:
@Bean
public ObjectMapper cosmosObjectMapper() {
return ObjectMapperFactory.getObjectMapper();
}
工厂由cosmos sdk提供:com.azure.spring.data.cosmos.core.convert.ObjectMapperFactory
然后你可以自定义你的对象映射器。
关于java - 如何在 java azure-cosmos sdk 4 中向 cosmos 客户端提供自定义 ObjectMapper?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62989948/
我是一名优秀的程序员,十分优秀!