如何将ArrayList从Jsp传递到Spring(注释库)控制器

问题描述:

如何将0123p的ArrayList从Jsp传递到弹簧控制器。如何将ArrayList从Jsp传递到Spring(注释库)控制器

我希望我的用户填写某种形式,其中1个对象数据以多种方式输入。我想要制作一个列表并保存该对象的所有不同值。

然后我想把它传递给弹簧控制器。这是最好的方法是什么?谢谢。

+0

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

是的,创建类并绑定这个类来形成控制器将自动接收类。

它看起来像这样。

@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

首先,您将从JSP传递一个HTTP请求到一个Spring控制器,而不是一个数组数组。

用户填写的表单将包含HTML表单元素,它们将作为HTTP参数名称/值对发送到服务器端。

Spring控制器将验证表单元素并将其绑定到对象中;如果你愿意,你当然可以将所有这些参数绑定到一个数组数组中。