• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • 自定義類型轉換器Converter

    標簽: java框架那點事  idea后端那點事兒  java

    實戰情況:假設我們采用REST風格編程,代碼中蘊藏這我們需要的數據,舉個例子,請求是這樣的 http://127.0.0.1:8081/test/converter?user=xl-pass123-23  但是呢,我們沒辦法直接用這個參數,里面有我們的姓名,密碼,年齡,如果我們直接用String 接這個參數再做處理顯的臃腫,我們可以采用自定義的類型轉換器Converter寫自己定義的規則,讓參數進行轉換。這樣我們拿到手就是一個完美的對象

    注意:加注解@Component將其注入到ioc容器中,再就是實現的接口別實現錯了,看準了,代碼貼出了

    本人最近都在整理git自學項目,學友可clone,辛苦點start , 地址:

    https://github.com/xianglong123/cas.git
    import com.cas.domain.User;
    import org.springframework.core.convert.converter.Converter;
    import org.springframework.stereotype.Component;
    
    @Component
    public class StringToUserConverter implements Converter<String, User> {
    
        @Override
        public User convert(String source) {
            User user = new User();
            String[] strArr = source.split("-");
            String username = strArr[0];
            String password = strArr[1];
            int age = Integer.parseInt(strArr[2]);
            user.setUsername(username);
            user.setPassword(password);
            user.setAge(age);
            return user;
        }
    }
    @Component
    @Data
    public class User {
    
        @Value("#{merch.username?.toUpperCase() + '312312312'}")
        private String username;
    
        @Value("123")
        private String password;
    
        @Value("#{1+2}")
        private int age;
    
        @Value("#{'222' eq '222'}")
        private boolean sex;
    
        @Value("#{T(System).currentTimeMillis()}")
        private Long initTime;
    
        public User() {}
    
        public User(String username, String password) {
            this.username = username;
            this.password = password;
        }
    
    }
        @GetMapping("/converter")
        @ResponseBody
        public com.cas.domain.User converter(com.cas.domain.User user) {
            return user;
        }

    請求:http://127.0.0.1:8081/test/converter?user=xl-pass123-23

    返回值:

     

    版權聲明:本文為qq_36005199原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/qq_36005199/article/details/104443644

    智能推薦

    struts2自定義類型轉換器

    為什么需要類型轉換器 當在表單中輸入填入日期時, 格式有很多,比如可以輸入1990年1月1日, 也可以填1990-01-01等多種方法, 這時候使用自定義類型的轉換器可以將格式進行轉化, 變為Action類可讀的格式 類型轉換器的種類 1. 基于OGNL的類型轉換器 要創建基于ognl的類型轉換器, 必須實現DefaultTypeConverter 并重寫convertValue方法 在入口的js...

    SpringMVC_10_自定義類型轉換器

    1.創建一個User對象,生成setter,getter和toString方法 2.重新寫表單 3.在ParamController類中加上saveUser方法 4.重新部署項目 輸入XXXX/XX/XX這樣的日期格式,可以執行成功 但是輸入XXXX-XX-XX就會執行失敗 如果想要XXXX-XX-XX的格式也能被轉換成功的話,就需要自定義數據類型轉換器 5.1編寫一個類,實現Converter接...

    mybatis實踐-自定義Mybatis類型轉換器

    mybatis實踐-自定義Mybatis類型轉換器 這兩天重新去看了http://www.mybatis.org/mybatis-3/zh/index.html上的文檔一遍,按照文檔上面的操作重新實踐后,整理成文檔記錄分享。 概念 概念 截圖自http://www.mybatis.org 總結就是:mybatis在預處理語句(PreparedStatement)中設置一個參數時將java類型(ja...

    SpringMVC---自定義類型轉換器

    一:自定義類型轉換器 二:spring支持的轉換器  三: 四:代碼實現 1.創建一個hander方法  2.創建自定義轉換器 3.springmvc.xml配置 4.測試jsp  ...

    SpringMVC自定義類型轉換器

    簡介 SpringMVC上下文中內建了很多的類型轉換器,可以完成絕大多數的Java類型的轉換工作。 ConversionService是類型轉換核心接口。 可以利用ConversionServiceFactoryBean在SpringIOC容器中定義一個ConversionService, Spring將自動的識別IOC容器中的ConversionService, 并在bean屬性配置以及Spri...

    猜你喜歡

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    精品国产乱码久久久久久蜜桃不卡