@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中保存日期以执行查询的格式
答案 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