1. 程式人生 > >Spring的控制器註解@InitBinder

Spring的控制器註解@InitBinder

因為看到這麼Mastering-Spring-5.0的一塊程式碼,想寫寫@InitBinder註解:

這裡我們處理一些date的格式,因為如果set的這個屬性是個物件,Spring就會去找到對應的editor進行轉換

WebDataBinder實現將請求request繫結到複雜屬性時的請求字元string到屬性的轉換 

然後寫個方法來試試效果,這裡使用一個入參date,需要的是dd/MM/yyyy的格式

然後我們在瀏覽器中輸入http://localhost:8080/ctest?date=2018/02/03,日誌輸出:

這時候我們如果輸入http://localhost:8080/ctest?date=2018-02-03,那麼就會有如下的報錯

錯誤是可以處理的,那麼我們再註冊一個CustomDateEditor處理dd-MM-yyyy的格式

當然如果你有更加複雜的邏輯,那麼我們可以自己定義一個類來處理,這裡需要繼承PropertyEditorSupport

這時候我們就可以傳這樣的引數http://localhost:8080/ctest?date=201802--03

參考:

[email protected]:PacktPublishing/Mastering-Spring-5.0.git

https://blog.csdn.net/qq_40594137/article