Я занимаюсь разработкой REST-сервера с использованием Spring Framework.
Я возвращаю список объекта Model (сотрудник, который содержит поле Date
Итак, мой класс Model выглядит следующим образом:
Class Employee {
private String empId;
private Date joinDate;
}
Мой метод контроллера выглядит так:
@GetMapping("/Employee")
public List<EmployeeLeaves> searchEmployeeLeaveDetails(@RequestParam(value = "filter", required = false) String filter) throws Exception {
List<Employee> empList = service.searchEmployee(filter);
return empList;
}
Когда я пытался вызвать этот API от почтальона, он всегда показывает, что joinDate на 1 день меньше реальной даты.
Я отладил эту проблему и обнаружил, что в контроллере дата является правильным значением
Ниже приведены результаты тестирования / отладки
Value for joinDate(Column type is Date) in Database: '2018-10-27'
Value for joinDate(java.sql.timestamp) in Controller: 2018-10-27 00:00:00.0
Value retried in postman's JSON response : "2018-10-26T18:30:00.000+0000"
У кого-нибудь есть идея, почему в ответе почтальона дата указана как 26 вместо 27?
Любой фактор, связанный с часовым поясом, оказался между?