国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

spring boot 隨筆 -- 配置全局的String轉(zhuǎn)Date參數(shù)轉(zhuǎn)換器

XBaron / 471人閱讀

摘要:你在寫接口的時候難免會遇到接收類型的日期參數(shù)例如轉(zhuǎn)換成類型情況。

你在寫接口的時候難免會遇到接收String類型的日期參數(shù)(例如:2018-04-21 11:57:36)轉(zhuǎn)換成Date類型情況。
百度了一番,發(fā)現(xiàn)大多數(shù)答案都是這樣子的:

@Configuration
public class WebConfigBeans {

    @Autowired
    RequestMappingHandlerAdapter requestMappingHandlerAdapter;

    @PostConstruct
    public void initEditableValidation(){
       ConfigurableWebBindingInitializer configurableWebBindingInitializer = (ConfigurableWebBindingInitializer) requestMappingHandlerAdapter.getWebBindingInitializer();
        if(configurableWebBindingInitializer.getConversionService()!=null){
            GenericConversionService service = (GenericConversionService) configurableWebBindingInitializer.getConversionService();
            service.addConverter(new StringToDateConverter());
        }
    }
}

上面的代碼確實(shí)解決了問題,可是,代碼有點(diǎn)不綠色節(jié)能。

以下是我的實(shí)現(xiàn):
配置配置全局的String轉(zhuǎn)Date參數(shù)轉(zhuǎn)換器,可以簡單解決這個問題!

web配置如下(spring boot 1.x 2.x 通用):

@Configuration
public class SpringMVCConfig extends WebMvcConfigurationSupport{

    /**
     * 添加自定義的Converters和Formatters.
     */
    @Override
    protected void addFormatters(FormatterRegistry registry) {
        registry.addConverter(new StringToDateConverter());
    }
}

綠色環(huán)保更節(jié)能!

String轉(zhuǎn)Date轉(zhuǎn)換器實(shí)現(xiàn)如下(好吧,我承認(rèn)下面的代碼這是我抄來的):

public class StringToDateConverter implements Converter {

    
     private static final String dateFormat      = "yyyy-MM-dd HH:mm:ss";
     private static final String shortDateFormat = "yyyy-MM-dd";

        @Override
        public Date convert(String source) {
            if (StringUtils.isBlank(source)) {
                return null;
            }
            source = source.trim();
            try {
                if (source.contains("-")) {
                    SimpleDateFormat formatter;
                    if (source.contains(":")) {
                        formatter = new SimpleDateFormat(dateFormat);
                    } else {
                        formatter = new SimpleDateFormat(shortDateFormat);
                    }
                    return formatter.parse(source);
                } else if (source.matches("^d+$")) {
                    Long lDate = new Long(source);
                    return new Date(lDate);
                }
            } catch (Exception e) {
                throw new RuntimeException(String.format("parser %s to Date fail", source));
            }
            throw new RuntimeException(String.format("parser %s to Date fail", source));
        }
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/69419.html

相關(guān)文章

  • ControllerAdvice攔截器

    摘要:看成提供的一個特殊的攔截器。是一個,用于定義最主要用途,和方法,適用于所有使用方法攔截。為所有封裝統(tǒng)一異常處理代碼。為所有設(shè)置全局變量。用于為所有設(shè)置某個類型的數(shù)據(jù)轉(zhuǎn)換器。 Spring3.2開始提供的新注解,控制器增強(qiáng)(AOP),最主要的應(yīng)用是做統(tǒng)一的異常處理。@ControllerAdvice(看成spring mvc提供的一個特殊的攔截器)。@ControllerAdvice是一...

    caohaoyu 評論0 收藏0
  • 慕課網(wǎng)_《SpringBoot開發(fā)常用技術(shù)整合》學(xué)習(xí)總結(jié)

    摘要:時間年月日星期四說明本文部分內(nèi)容均來自慕課網(wǎng)。哈希表實(shí)現(xiàn)命令,將哈希表中的域的值設(shè)為實(shí)現(xiàn)命令,返回哈希表中給定域的值實(shí)現(xiàn)命令,刪除哈希表中的一個或多個指定域,不存在的域?qū)⒈缓雎浴?shí)現(xiàn)命令,返回哈希表中,所有的域和值。 時間:2018年04月19日星期四說明:本文部分內(nèi)容均來自慕課網(wǎng)。@慕課網(wǎng):https://www.imooc.com教學(xué)源碼:https://github.com/zc...

    chengtao1633 評論0 收藏0
  • Spring Boot屬性綁定

    摘要:所以適合簡單屬性值的獲取,不知何復(fù)雜對象的綁定。綁定對象綁定綁定列表轉(zhuǎn)換以及默認(rèn)值綁定過程回調(diào)函數(shù),高度定制綁定開始綁定成功綁定失敗沒有找到匹配的屬性綁定結(jié)束 Spring Boot中的屬性綁定 之前翻譯了一篇不怎么樣的文章,主要是翻譯的水平有限,自己翻譯的云里霧里,發(fā)現(xiàn)平時只會有@ConfigurationProperties注解,對SpringBoot強(qiáng)大的屬性綁定知之甚少,所以以...

    xfee 評論0 收藏0
  • ★推薦一款適用于SpringBoot項(xiàng)目輕量級HTTP客戶端框架

    摘要:請求重試攔截器錯誤解碼器在發(fā)生請求錯誤包括發(fā)生異常或者響應(yīng)數(shù)據(jù)不符合預(yù)期的時候,錯誤解碼器可將相關(guān)信息解碼到自定義異常中。 在SpringBoot項(xiàng)目直接使用okhttp、httpClient或者RestTemplate發(fā)起HTTP請求,既繁瑣又不方便統(tǒng)一管理。因此,在這里推薦一個適...

    不知名網(wǎng)友 評論0 收藏0
  • Spring Boot - 整合Jsp/FreeMarker

    摘要:大家自己了解一下的使用方法,我這里就不進(jìn)行詳細(xì)的講述了。啟動方式兩種方式都可以主函數(shù)啟動或者驗(yàn)證訪問頁面,驗(yàn)證是否輸出了當(dāng)前時間。為了提高大家學(xué)習(xí)效果,錄制了同步的視頻課程,還望大家支持視頻課程 Spring Boot - 初識 Hello World 索引 Spring Boot - 初識 Hello World Spring Boot - Servlet、過濾器、監(jiān)聽器、攔截器 ...

    AbnerMing 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<