如何将日期转换为使用Java和Spring在MongoDB中保存日期的格式?

时间:2017-12-09 11:51:11

标签: java mongodb date-formatting

 @GetMapping("/{dateFrom}/{dateTo}")
       public List<com.example.demo.attendance> getRange(@PathVariable("dateFrom")  String dateFrom,@PathVariable("dateTo") String dateTo) throws ParseException{
          Date date1= new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").parse(dateFrom);
          Date date2= new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").parse(dateTo);
          System.out.println(date1);
          System.out.println(date2);
           List<com.example.demo.attendance> att =  this.attRepo.findDateBetween(date1,date2);

           return att;
        }

这里我试图将格式(yyyy-MM-dd)中的日期转换为在mongodb中保存日期以执行查询的格式

1 个答案:

答案 0 :(得分:0)

在我看来,日期参数应该作为请求参数传递,但无论如何。你为什么不这样做:

@GetMapping("/{dateFrom}/{dateTo}")
public List < com.example.demo.attendance > getRange(@PathVariable("dateFrom") @DateTimeFormat(pattern = "yyyy-MM-dd") Date fromDate, 
  @PathVariable("dateTo") @DateTimeFormat(pattern = "yyyy-MM-dd") Date dateTo) throws ParseException {
    System.out.println(date1);
    System.out.println(date2);
    List < com.example.demo.attendance > att = this.attRepo.findDateBetween(date1, date2);

    return att;
}

目前MongoDB驱动程序仅支持java.util.Date 我不知道您使用的是哪个版本的MongoDB Java驱动程序,但这里是3.4的Documentation of the driver’s support for BSON document representations。如果发生变化,您可以及时了解最新信息。在此处查找MongoDB Java Driver

的最新文档