Issue
I have a problem with date format in JSON response generated in REST project (SpringBoot+Hibernate).
When I call function I got JSON like this:
"rezerwacjaDataOd": 1535580000000,
"rezerwacjaDataDo": 1535839200000,
"rezerwacjaGodzOd": "14:00:00",
"rezerwacjaGodzDo": "12:00:00"
my entity:
private Date rezerwacjaDataOd;
private Date rezerwacjaDataDo;
private Time rezerwacjaGodzOd;
private Time rezerwacjaGodzDo;
It's Date from java.sql and Time from java.sql too
My controller:
@RestController
@CrossOrigin
@RequestMapping("api/rezerwacja")
@Api
public class RezerwacjaController {
...
@GetMapping(value = "/getRezerwacjaById")
public @ResponseBody
Rezerwacja getRezerwacjaById(Integer id) {
return rezDao.findOne(id);
}
...
Why Time is in "12:00:00" format, but Date in 1535580000000 format? How to make Date to be in "yyyy-MM-dd" format?
Solution
You should do two things
add
spring.jackson.serialization.write-dates-as-timestamps:false
in yourapplication.properties
this will disable converting dates to timestamps and instead use a ISO-8601 compliant formatYou can then customize the format by annotating the getter method of you
dateOfBirth
property with@JsonFormat(pattern="yyyy-MM-dd")
Answered By - Alien
Answer Checked By - Timothy Miller (JavaFixing Admin)