SpringBoot2.x | 時區設定
阿新 • • 發佈:2018-12-22
在插入資料庫以及從資料庫查詢出的時間資料發現比當前時間少了8個小時,需要增加一些配置來解決這個問題。
application.properties
# 資料庫配置
spring.datasource.url=jdbc:mysql://localhost:3306/bookstore?useSSL=false&useUnicode=true&characterEncoding=utf-8&useLegacyDatetimeCode=false&serverTimezone=UTC
# 統一時區
spring.jackson.time-zone=GMT+8
實體層配置
// Entity => Vip
// Date返回型別的getter方法
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
public Date getVipCreateTime() {
return vipCreateTime;
}
啟動類
package com.bookstore;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org. springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.MultipartConfigFactory;
import org.springframework.context.annotation.Bean;
import javax.annotation.PostConstruct;
import javax.servlet.MultipartConfigElement;
import java.util.TimeZone;
/**
* <p>後臺啟動類</p>
* ====================
* @version 1.0
* @author noTalent
*/
@MapperScan("com.bookstore.mapper")
@SpringBootApplication
public class BookstoreApplication {
public static void main(String[] args) {
SpringApplication.run(BookstoreApplication.class, args);
}
/**
* 伺服器時區設定
* 解決服務端時差問題
*/
@PostConstruct
void setDefaultTimezone() {
TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
}
}