2015-09-29 5 views
0

В моем dto я использую этот способ, чтобы получить правильное значение в db.Java формат даты json не соблюдается

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd/MM/yyyy", timezone="EST") 
private Date birthdate; 

Если я ввожу 29/09/2015, я получаю правильное значение в дБ.

Когда я показываю его, я получаю 2015-09-29 в html.

Почему JsonFormat не используется?

web для java в порядке, поэтому проблема в java для Интернета.

ответ

1

Проверить эту ссылку: Jackson Serialize Dates

В классе у вас есть что-то вроде этого:

@JsonFormat 
    (shape = JsonFormat.Shape.STRING, pattern = "dd-MM-yyyy hh:mm:ss") 
public Date eventDate; 

Теперь для тестирования формат вам нужно сделать что-то вроде этого.

SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss"); 
df.setTimeZone(TimeZone.getTimeZone("UTC")); 

String toParse = "20-12-2014 02:30:00"; 
Date date = df.parse(toParse); 
Event event = new Event("party", date); 

ObjectMapper mapper = new ObjectMapper(); 
String result = mapper.writeValueAsString(event); 
assertThat(result, containsString(toParse)); 

Проверьте ссылки для получения дополнительной информации.

+0

Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. – Marcelo

+0

Спасибо за совет. –

+0

моей проблемой является java для js ... –