2011-02-03 110 views
1

如何將0123p的ArrayList從Jsp傳遞到彈簧控制器。如何將ArrayList從Jsp傳遞到Spring(註釋庫)控制器

我希望我的用戶填寫某種形式,其中1個對象數據以多種方式輸入。我想要製作一個列表並保存該對象的所有不同值。

然後我想把它傳遞給彈簧控制器。這是最好的方法是什麼?謝謝。

+0

你的jsp看起來像什麼? – Bozho 2011-02-03 12:17:51

回答

1

是的,創建類並綁定這個類來形成控制器將自動接收類。

它看起來像這樣。

@RequestMapping(value="/submit",method = RequestMethod.POST) 
     public ModelAndView addUser(@Valid MyClass myClass, BindingResult result){ 

} 

public class MyClass{ 
private List<ArrayList<Integer>> list = new ArrayList<ArrayList<Integer>>(); 

//getters and setters. 
} 

希望它有幫助。

更新:

Ajax的方式:

JSON = { 「MyClass的」, 「列表」:[[1,2,3,4],[1,2,3,45] [3,5,1]]}

和控制器本身。

@RequestMapping(value="/submit",method = RequestMethod.POST) 
    @ResponseBody 
    public String getAjax(@RequestBody Myclass myClass){ 
//do something 
} 

和使用JavaScript構建吸JSON和發送到服務器使用AJAX。您也可以在使用JavaScript之前驗證您的表單。

+0

`@Valid MyClass類`這個不會編譯,`class`是一個保留關鍵字 – 2011-02-03 11:18:13

1

首先,您將從JSP傳遞一個HTTP請求到一個Spring控制器,而不是一個數組數組。

用戶填寫的表單將包含HTML表單元素,它們將作爲HTTP參數名稱/值對發送到服務器端。

Spring控制器將驗證表單元素並將其綁定到對象中;如果你願意,你當然可以將所有這些參數綁定到一個數組數組中。

相關問題