В контроллере Spring я получаю предыдущую дату, а не фактическую дату, которую я отправляю - PullRequest
0 голосов
/ 25 сентября 2019

Я отправляю дату из палитры «Дата», она идет правильно, но когда я проверяю в контроллере, дата получала вчерашнюю дату в бэкэнде весенней загрузки и angualr js во внешнем интерфейсе

Я попытался установить часовой пояс в приложениисвойства типа:

spring.jackson.time-zone = IST

spring.jackson.locale = in_IN

, но не работает

дата, которая gonign == dao: Tue Oct 01 2019 00:00:00 GMT+0530 (стандартное время Индии) и

дата, которая попадает в контроллер == dao=2019-09-30T18:30:00.000Z

Ответы [ 3 ]

0 голосов
/ 25 сентября 2019

Объекты за все время, связанные с TimeZone (java.util.Calendar и т. Д.), Которые создает Джексон, используют стандартный часовой пояс (GMT), а не местный часовой пояс (каким бы он ни был).То есть: Джексон по умолчанию использует GMT для всей обработки, если не указано иное.Используйте эту строку в вашем члене данных класса JSON POJO, который связан с объектом данных из JSON.

@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="dd/MM/yyyy", timezone="IST")
0 голосов
/ 25 сентября 2019

решено, я изменил формат

0 голосов
/ 25 сентября 2019

JVM примет часовой пояс по умолчанию в качестве часового пояса сервера.Например, если сервер работает по протоколу IST, JVM по умолчанию использует время IST.Вы можете использовать этот код и инициализировать часовой пояс на стороне сервера во время запуска приложения.

@SpringBootApplication
public class Application {
@PostConstruct
public void init(){
// Setting Spring Boot SetTimeZone
TimeZone.setDefault(TimeZone.getTimeZone("IST"));
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...