1. 程式人生 > >spring mvc自定義型別轉換器

spring mvc自定義型別轉換器

參考spring boot 配置全域性日期型別轉換器

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被徹底解除安裝之前。(詳見下面的程式實踐)