Java Spring boot 日期和时间统一设置
在Spring Boot中,可以通过配置文件或编程方式设置日期和时间。以下是一个使用application.properties
文件设置日期和时间的例子:
# 设置默认的时区
spring.jackson.time-zone=UTC
# 设置日期格式
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
如果你想通过代码来设置,可以创建一个配置类,如下所示:
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.time.ZoneId;
import java.util.TimeZone;
@Configuration
public class JacksonConfig {
@Bean
public ObjectMapper objectMapper() {
ObjectMapper mapper = new ObjectMapper();
// 设置时区
mapper.setTimeZone(TimeZone.getTimeZone(ZoneId.of("UTC")));
// 注册Java 8日期和时间模块
JavaTimeModule javaTimeModule = new JavaTimeModule();
mapper.registerModule(javaTimeModule);
// 设置日期格式
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
// 根据需要自定义日期格式
// mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
return mapper;
}
}
这段代码配置了ObjectMapper
以使用UTC时区,并通过JavaTimeModule
支持Java 8日期和时间的序列化和反序列化。你可以通过setDateFormat
来自定义日期格式。
评论已关闭