spring mvc自定義型別轉換器
阿新 • • 發佈:2018-12-23
1 定義轉換器
@Component
public class DateConvert implements Converter<String,Date> {
@Override
public Date convert(String source) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
try {
return simpleDateFormat. parse(source);
}catch (ParseException e){
e.printStackTrace();
}
return null;
}
}
2 在配置檔案中註冊轉換器
@ComponentScan(value = "com.cc")
@Configuration
public class ApplicationConfig extends WebMvcConfigurationSupport{
@Autowired
private ConfigurableConversionService conversionService;
@Autowired
private DateConvert dateConvert;
public ApplicationConfig() {
System.out.println("應用啟動……");
}
@PostConstruct
public void initEditableAvlidation(){
if (conversionService!=null){
conversionService.addConverter(dateConvert);
}
}
3 說明
ConfigurableConversionService
用於註冊convert
@PostConstruct
被@PostConstruct修飾的方法會在伺服器載入Servlet的時候執行,並且只會被伺服器呼叫一次,類似於Serclet的inti()方法。被@PostConstruct修飾的方法會在建構函式之後,init()方法之前執行。
@PreDestroy
@PreDestroy修飾的方法會在伺服器解除安裝Servlet的時候執行,並且只會被伺服器呼叫一次,類似於Servlet的destroy()方法。被@PreDestroy修飾的方法會在destroy()方法之後執行,在Servlet被徹底解除安裝之前。(詳見下面的程式實踐)