这是我的Java代码:
public class dtoAdapter{
public FuelTab tabDtoToTabConverter(FuelTabDTO fuelTabDTO) {
fuelTab.setPurchaseDate(stringToLocalDateConverter(fuelTabDTO.getPurchaseDate()));
...//some more setters
return fuelTab;
}
private LocalDate stringToLocalDateConverter(String date){
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM.dd.yyyy");
return LocalDate.parse(date, formatter);
}
}
我已经输入:
{
"purchaseDate": "02.01.2018"
}
,但是数据库中的日期为2018-01-31,因此减少了1天。我该如何解决?
答案 0 :(得分:0)
在SQL中将标准日期作为DateTime插入,从而导致日期自动填充为零:
02-01-2018 00:00:00
您应该插入带有时间戳记12:00:00
的数据来解决您的问题
这也可能是由于数据库时区和本地应用程序时区之间的差异