{
"commentId": "1484081474396172288",
"content": "测试评论1",
"createTime": "2022-01-20T16:32:51.058",
"likeNum": 0,
"parentId": "1449980209100763137",
"userId": "18",
"userName": "super-admin",
"workId": "1449980209100763137"
}
@Configuration
public class MongoConfig {
//TODO MongoDbFactory 已被弃用
@Resource
MongoDbFactory factory;
@Primary
@Bean(name = "mongoTemplate")
public MongoTemplate getMongoTemplate() {
MongoTemplate mongoTemplate = new MongoTemplate(factory);
MappingMongoConverter mongoMapping = (MappingMongoConverter) mongoTemplate.getConverter();
// set 自定义转换器
mongoMapping.setCustomConversions(customConverter());
mongoMapping.afterPropertiesSet();
return mongoTemplate;
}
// 注册自定义转换器
@Bean
public MongoCustomConversions customConverter() {
List<Converter<?, ?>> converters = new ArrayList<>(2);
converters.add(new StringToLocalDateTime());
converters.add(new LocalDateTimeToString());
return new MongoCustomConversions(converters);
}
}
@Field("create_time")
@DateTimeFormat(pattern = "格式")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "格式(CSDN不允许)", timezone = "GMT+8")
private LocalDateTime createTime;
去除时间上的T,获取到格式为(年-月-日 时:分:秒)的数据
@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS")
我代码上的格式代表就是yyyy-MM-dd'T'HH:mm:ss.SSS,CSDN不允许重复就没写上去
看上去这个格式是符合规律的,直接按位置截字符串拼接吧😄
https://blog.csdn.net/weixin_42461205/article/details/114384361?spm=1001.2014.3001.5502
试试这个,
https://juejin.cn/post/6844903854295744525
实在不行 就直接重新弄个字段 返回给前端好了 重写新字段get方法 在createTime不为空的时候 返回格式化后的时间字符串就好了,这样也不影响前端的使用,也没有打破原有逻辑,DateTimeFormat和JsonFormat好像对LocalDateTime 不起作用