SpringBoot整合日期转换器

SpringBoot整合日期转换器

SpringBoot设置后台向前台传递Date日期格式

方式1:配置文件修改

配置文件配置application.yml

spring:
  # 配置日期格式化
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss  #时间戳统一转换为指定格式
    time-zone: GMT+8  # 时区修改为东8区
方式2:在实体类上加注解
//在pattern上设置自己需要的格式
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime;

SpringBoot设置前台向后台传递Date日期格式

方式1:在实体类上加注解
 //注解将yyyy-MM-dd的形式转换为Date数据
 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 private Date birthday;
方式2:SpringBoot配置全局日期格式转换器
package com.usian.converter;

import java.text.ParseException;
import java.util.Date;

import org.springframework.core.convert.converter.Converter;
import org.apache.commons.lang3.time.DateUtils;
//Converter<S,T>  S: 代表的是源,将要转换的数据类型  T:目标类型,将会转成什么数据类型
public class DateConverter implements Converter<String, Date>{

	@Override
	public Date convert(String str) {
	      String[] patterns = new String[]{
	              "yyyy-MM-dd","yyyy-MM-dd hh:mm:ss","yyyy/MM/dd","yyyy/MM/dd hh:mm:ss",
	              "MM-dd-yyyy","dd-MM-yyyy"};
		try {
			Date date = DateUtils.parseDate(str, patterns);
			return date;
		} catch (ParseException e) {
			e.printStackTrace();
		}
		return null;
	}

}

配置日期转换器

package com.usian.config;

import com.usian.converter.DateConverter;
import org.springframework.context.annotation.Configuration;
import org.springframework.format.FormatterRegistry;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration //<beans>
public class MyConfig implements WebMvcConfigurer {
	
	@Override
	public void addFormatters(FormatterRegistry registry) {
		registry.addConverter(new DateConverter());
	}
	
}
我等的船还不来
原文地址:https://www.cnblogs.com/lxs1204/p/14274284.html