在Spring MVC 中將複雜物件作為GET 請求參數傳遞
在使用Ajax GET 請求從表中過濾資料的場景中,您可能會遇到需要傳遞複雜物件作為請求參數的情況。傳統上,這需要在控制器中使用過多的 @RequestParam 註解。
問題:
您有一個 GET 請求來篩選具有如下查詢參數的表:
http://foo.com/system/controller/action?page=1&prop1=x&prop2=y&prop3=z
您的控制器的參數將是:
@RequestMapping(value = "/action") public @ResponseBody List<MyObject> myAction( @RequestParam(value = "page", required = false) int page, @RequestParam(value = "prop1", required = false) String prop1, @RequestParam(value = "prop2", required = false) String prop2, @RequestParam(value = "prop3", required = false) String prop3) { ... }
解決方案:
為了簡化這個過程,可以直接將複雜物件作為請求參數傳遞,無需@RequestParam註解。 Spring會自動將請求參數綁定到你的類別的實例上:
public @ResponseBody List<MyObject> myAction( @RequestParam(value = "page", required = false) int page, MyObject myObject)
以上是如何在 Spring MVC 中將複雜物件作為 GET 請求參數傳遞?的詳細內容。更多資訊請關注PHP中文網其他相關文章!