springMVC中引數格式化
SpringMVC中的資料編輯器主要用於在資料傳遞過程中的資料型別轉化,例如:我們的前端有一個“2015-04-28”的日期格式的字串,我們在將其傳遞時,直接轉化為我們所需要的Date型別,這是後就需要屬性編輯器。
在這裡我們仍然使用日期型別轉換為例:
需要匯入包:joda-time-2.1.jar
index.jsp
<form action="date" method="post">
date:<input type="text" id="date" name="date"/><br/>
<input type="submit" value="date"/>
</form>
Controller
@InitBinder
protected void initBinder(WebDataBinder wdb)
{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
wdb.registerCustomEditor(Date.class,new CustomDateEditor(sdf,true));
}
@RequestMapping("/date")
public String date(@RequestParam("date") Date date)
{
System.out.println(date);
return "";
}
當我們點選按鈕傳送請求傳遞輸入yyyy-MM-dd格式的字串時,就會被識別然後通過引數註解Date型別的引數,就可以實現轉換:public String date(@DateTimeFormat(pattern="yyyy-MM-dd") @RequestParam("date") Date date)。@InitBinder是一個初始化編輯器繫結,會將我們指定的編輯器繫結到該Controller中,因此@InitBinder只在當前的Controller中有效。通過registerCustomEditor註冊一個我們自己定義的日期編輯器,SpringMVC在引數的傳遞過程中,預設是不能識別yyyy-MM-dd格式的資料,因此通過以上方式就實現引數型別的轉換。
其實對日期格式的轉換在SpringMVC提供了一個非常簡單方式那就是是使用@DateTimeFormat註解,將 該註解註釋到接受引數的形參前面,然後指定其屬性pattern的值,“yyyy-MM-dd” 或"yyyy/MM/dd"就可以識別前端傳遞的引數。
在這裡提一下@RequestParam(value=“”) 的過程:當引數傳遞過來會嘗試將字串轉換為我們所需要的型別(例如int、long),如果能轉化(springMVC內建),則轉化成功,否則就會報錯。
在SpringMVC中提供了豐富的引數格式化,DateTimeFormetter NumberFormetter可以參考
http://www.cnblogs.com/liukemng/p/3748137.html
因此,對於一些特殊的轉換我們主需要在引數使用註解,並且制定pattern。
相關文章
- SpringMVC中的引數繫結總結SpringMVC
- springmvc 引數繫結SpringMVC
- SpringMVC請求引數解析SpringMVC
- SpringMVC之引數傳遞SpringMVC
- SpringMVC中@RequestBody接收前端傳來的多個引數SpringMVC前端
- SpringMVC實現引數校驗SpringMVC
- 聊聊springmvc中controller的方法的引數註解SpringMVCController
- 18SpringMvc_在業務控制方法中收集陣列引數SpringMVC陣列
- SpringMVC學習(三)對映請求引數&請求引數SpringMVC
- 前臺傳遞引數使用變數@RequestParam springmvc變數SpringMVC
- 【工作篇】再次熟悉 SpringMVC 引數繫結SpringMVC
- SpringMVC重定向傳引數的實現SpringMVC
- SpringMVC原始碼之引數解析繫結原理SpringMVC原始碼
- SpringMVC的引數繫結-日期格式轉換SpringMVC
- springmvc引數型別轉換三種方式SpringMVC型別
- [轉載]SpringMVC的Model引數繫結方式SpringMVC
- ajax傳遞引數給springmvc總結[轉]SpringMVC
- Java Web之SpringMVC 進行引數繫結JavaWebSpringMVC
- 一篇文章搞定SpringMVC引數繫結SpringMVC
- JWT+SpringBoot+SpringMVC引數解析器JWTSpring BootSpringMVC
- SpringMVC底層——請求引數處理流程描述SpringMVC
- springmvc請求引數獲取的幾種方法SpringMVC
- C#中的值引數,引用引數及輸出引數C#
- js時間字串格式化以及url引數處理JS字串格式化
- springmvc引數設定預設值,多地址請求SpringMVC
- [Spring MVC] - SpringMVC的各種引數繫結方式SpringMVC
- C#中命名引數和可選引數C#
- JS中的數字格式化和大位數縮寫JS
- SpringMVC【引數繫結、資料回顯、檔案上傳】SpringMVC
- 拙見--springMVC的controller接受的請求引數SpringMVCController
- 2.5萬字長文簡單總結SpringMVC請求引數接收SpringMVC
- springMvc原始碼學習之:spirngMvc獲取請求引數的方法SpringMVC原始碼
- SpringMVC 學習筆記(三) 使用ServletAPI 和 實體 做為引數SpringMVC筆記ServletAPI
- Python中的引數遮蔽Python
- Grails中如何繫結引數AI
- JavaScript 中的引數處理JavaScript
- angular cli中的--flat引數Angular
- 函式中引數傳值函式