SpringBoot中自定義參數(shù)綁定步驟詳解
正常情況下,前端傳遞來的參數(shù)都能直接被SpringMVC接收,但是也會遇到一些特殊情況,比如Date對象,當我的前端傳來的一個日期時,就需要服務(wù)端自定義參數(shù)綁定,將前端的日期進行轉(zhuǎn)換。自定義參數(shù)綁定也很簡單,分兩個步驟:
1.自定義參數(shù)轉(zhuǎn)換器
自定義參數(shù)轉(zhuǎn)換器實現(xiàn)Converter接口,如下:
public class DateConverter implements Converter<String,Date> { private SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); @Override public Date convert(String s) { if ("".equals(s) || s == null) { return null; } try { return simpleDateFormat.parse(s); } catch (ParseException e) { e.printStackTrace(); } return null; } }
convert方法接收一個字符串參數(shù),這個參數(shù)就是前端傳來的日期字符串,這個字符串滿足yyyy-MM-dd格式,然后通過SimpleDateFormat將這個字符串轉(zhuǎn)為一個Date對象返回即可。
2.配置轉(zhuǎn)換器
自定義WebMvcConfig繼承WebMvcConfigurerAdapter,在addFormatters方法中進行配置:
@Configuration public class WebMvcConfig extends WebMvcConfigurerAdapter { @Override public void addFormatters(FormatterRegistry registry) { registry.addConverter(new DateConverter()); } }
OK,如上兩步之后,我們就可以在服務(wù)端接收一個前端傳來的字符串日期并將之轉(zhuǎn)為Java中的Date對象了,前端日期控件如下:
<el-date-picker v-model="emp.birthday" size="mini" value-format="yyyy-MM-dd HH:mm:ss" style="width: 150px" type="date" placeholder="出生日期"> </el-date-picker>
服務(wù)端接口如下:
@RequestMapping(value = "/emp", method = RequestMethod.POST) public RespBean addEmp(Employee employee) { if (empService.addEmp(employee) == 1) { return new RespBean("success", "添加成功!"); } return new RespBean("error", "添加失敗!"); }
其中Employee中有一個名為birthday的屬性,該屬性的數(shù)據(jù)類型是一個Date
相關(guān)文章
簡單了解Java關(guān)鍵字throw和throws的區(qū)別
這篇文章主要介紹了簡單了解Java關(guān)鍵字throw和throws的區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下2019-11-11Java兩種方法計算出階乘尾部連續(xù)0的個數(shù)
這篇文章主要介紹了Java兩種方法計算出階乘尾部連續(xù)0的個數(shù),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2021-03-03Java二維數(shù)組實現(xiàn)數(shù)字拼圖效果
這篇文章主要為大家詳細介紹了Java二維數(shù)組實現(xiàn)數(shù)字拼圖效果,控制臺可以對空格進行移動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-07-07Java中如何將list轉(zhuǎn)為樹形結(jié)構(gòu)
這篇文章主要介紹了Java中如何將list轉(zhuǎn)為樹形結(jié)構(gòu),本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-09-09spring boot整合redis實現(xiàn)RedisTemplate三分鐘快速入門
這篇文章主要介紹了spring boot整合redis實現(xiàn)RedisTemplate三分鐘快速入門,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2020-12-12Spring?Boot解決循環(huán)依賴的過程詳細記錄
這篇文章主要介紹了Spring?Boot解決循環(huán)依賴的過程,Spring框架通過三級緩存機制解決循環(huán)依賴問題,分別為singletonObjects、earlySingletonObjects和singletonFactories,需要的朋友可以參考下2024-09-09淺談Java中的重載,重寫,多態(tài),靜態(tài)綁定、動態(tài)綁定
這篇文章主要介紹了淺談Java中的重載,重寫,多態(tài),靜態(tài)綁定、動態(tài)綁定,具有一定借鑒價值2018-01-01