Spring boot - преобразование даты в MongoRepository - PullRequest
0 голосов
/ 10 декабря 2018

Я использую загрузку Spring с хранилищем Mongo с использованием Spring Data.Приложение My Spring по умолчанию использует часовой пояс UTC .Когда я запрашиваю базу данных mongo по датам, я отправляю Date в @Query: [...] 'TransactionDate': { $gte: ?4, $lt: ?5 } } следующим образом и отправляю дату Java в параметрах.Однако Mongo преобразует эту дату UTC в GMT, хотя это уже время GMT и при возврате данных.Он также конвертируется в местный часовой пояс, как если бы он не учитывал часовой пояс JVM.Как я могу заставить Монго прекратить делать это преобразование и понять, что я уже отправил даты в GMT

Ответы [ 2 ]

0 голосов
/ 26 декабря 2018

Монго-компас использует местный часовой пояс ПК для преобразования и отображения данных.Что касается Java, то ничего не нужно делать, кроме отправки даты Java в нужный часовой пояс.

0 голосов
/ 10 декабря 2018
package com.onlinetutorialspoint.SpringBoot_Custom_ErrorPage;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import javax.annotation.PostConstruct;
import java.util.Date;
import java.util.TimeZone;

@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);
  }
}

Это должно решить вашу проблему.

...