Skip to content

[FEATURE]支持MongoDB的Date类型和java.util.Date类型的转换 #2614

@ocean23

Description

@ocean23

请描述您的需求或者改进建议

背景如下:
由于我们非常重度的依赖MongoDB数据库,而MongoDB返回日期(Date)的JSON字符串并不是一个标准的JSON,所以fastjson2需要适配才行

  1. 以下是MongoDB存储日期数据ttl的内容
{ 
    "ttl" : ISODate("2024-05-21T12:08:45.461+0000")
}
  1. 以下是通过org.bson.Document获取到json字符串的内容
Document document = event.getFullDocument();
document.toJson()
{"ttl": {"$date": "2024-05-21T16:15:19.371Z"}}
  1. 这时当我们执行转换时由于fastjson2没有对mongodb的日期类型做特别的适配,所以就会导致报错
    @Getter
    @Setter
    public class Message {
        private Date ttl;
    }

Message  data = JSON.parseObject(document.toJson(), Message.class);

请描述你建议的实现方案

我已经写好的PR, 让fastjson2支持mongodb的日期类型转换为java.util.Date类型,一会我把PR发出来

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions