在 spring boot 中,需要重写 WebMvcConfigurerAdapter 抽像类,来定义自己的一些处理逻辑
@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter {
@Bean
public Converter<String, Date> stringToDate(){
return new Converter<String, Date>() {
@Override
public Date convert(String source) {
if(StringUtils.isNotEmpty(source) && source.matches("^\\d{4}-\\d{2}-\\d{2}[^\\r\\t]*")) {
try {
System.out.println("source=" + source);
return DateUtil.parse(source);
} catch (Exception e) {
e.printStackTrace();
}
}
return null;
}
};
}
}
查看编译后的 class ,多了一个 MyWebAppConfigurer$1.class ,反编译的的代码如下
class MyWebAppConfigurer$1
implements Converter<String, Date>
{
MyWebAppConfigurer$1(MyWebAppConfigurer paramMyWebAppConfigurer) {}
public Date convert(String source)
{
if ((StringUtils.isNotEmpty(source)) && (source.matches("^\\d{4}-\\d{2}-\\d{2}[^\\r\\t]*"))) {
try
{
System.out.println("source=" + source);
return DateUtil.parse(source);
}
catch (Exception e)
{
e.printStackTrace();
}
}
return null;
}
}
说明 java 是按照匿名类来处理的