1. 首先自定义一个类型转换器
import org.springframework.core.convert.converter.Converter; import org.springframework.stereotype.Component; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; @Component public class MyDataConvert implements Converter<String, Date> { //这里可以自己灵活变通 private String [] pattern = {"yyyy-MM-dd","yyyy年MM月dd日"}; @Override public Date convert(String s) { System.out.println("convert"); for (int i=0;i<pattern.length;i++){ try { return new SimpleDateFormat(pattern[i]).parse(s); } catch (ParseException e) { continue; } } return null; } }
2.在配置类中注册自定义类型转换器
import com.example.demo.convert.MyDataConvert; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.core.convert.support.GenericConversionService; import org.springframework.web.bind.support.ConfigurableWebBindingInitializer; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter; import javax.annotation.PostConstruct; @Configuration public class WebConfigurer extends WebMvcConfigurationSupport { @Autowired private RequestMappingHandlerAdapter handlerAdapter; @PostConstruct public void initEditableAvlidation() { ConfigurableWebBindingInitializer initializer = (ConfigurableWebBindingInitializer)handlerAdapter.getWebBindingInitializer(); if(initializer.getConversionService()!=null) { GenericConversionService genericConversionService = (GenericConversionService)initializer.getConversionService(); genericConversionService.addConverter(new MyDataConvert());//添加自定义的类型转换器 } } }
相关推荐:
以上就是spring boot如何配置全局日期类型转换器(代码)的详细内容,更多请关注php中文网其它相关文章!
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。