有时候前台传过来一个日期类型,在后台接收就比较麻烦,这时候用springMVC的转换器,就比较方便了.
主要三步,
1.自定义参数转换器
自定义参数转换器必须实现Converter接口
public class DateConverter implements Converter<String,Date> {
private final SimpleDateFormat smf = new SimpleDateFormat("yyyyMMdd");
@Override
public Date convert(String s) {
if ("".equals(s) || null == s) {
return null;
}
try {
return smf.parse(s);
}catch (Exception e){
e.printStackTrace();
}
return null;
}
}
2. 配置转换器
自定义WebMvcConfig继承WebMvcConfigurerAdapter,在addFormatters方法中进行配置:
@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Override
public void addFormatters(FormatterRegistry registry) {
registry.addConverter(new DateConverter());
}
}
3. 编写测试Controller
@RestController
public class HelloController {
@RequestMapping(method = RequestMethod.GET,path = "/hello")
public String hello(Date date){
System.out.println(date);
return "hello springboot" + date;
}
}
4. 测试方法和效果