Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何从Javascript调用Spring MVC?_Jquery_Spring Mvc - Fatal编程技术网

Jquery 如何从Javascript调用Spring MVC?

Jquery 如何从Javascript调用Spring MVC?,jquery,spring-mvc,Jquery,Spring Mvc,如何从请求参数实例化自定义对象?(我已经尝试了@modeldattribute和@RequestParam) 我尝试使用以下代码通过jQuery调用此函数: var PersonText = '["firstname":"John", "lastname":"Someone"]'; $.ajax({ type : 'POST', url : "/addnewperson.do", data : {'personModel' : personText}, datatype : 'json', su

如何从请求参数实例化自定义对象?(我已经尝试了@modeldattribute和@RequestParam)

我尝试使用以下代码通过jQuery调用此函数:

var PersonText = '["firstname":"John", "lastname":"Someone"]';
$.ajax({
type : 'POST',
url : "/addnewperson.do",
data : {'personModel' : personText},
datatype : 'json',
success : function(data) {
    var obj = jQuery.parseJSON(data);
}
});
事实上,我最初的计划是将整个person对象列表发送给控制器,但由于这不起作用,我又返回到单个对象,但现在也不起作用


编辑:参数不必是JSON,我只是认为将Javascript对象序列化为JSON传递给Spring控制器是有意义的。

我能够通过Javascript(jquery)的以下调用实现这一点

但是,我仍然很想知道如何使其与数组或列表一起工作,即参数为
Person[]
List

@RequestMapping(method = RequestMethod.POST)
public String newPerson(@RequestParam("personModel") String person,    BindingResult result) {
Gson gson = new Gson();
Person finalObject = gson.fromJson(person, Person.class);
// Person has just firstname and lastname fields
 }
你可以这样使用它。对于列表,您可以使用以下内容:

Gson gson = new Gson();
List<Person> finalObjectList = gson.fromJson(Person, new TypeToken<List<Person>>() {
    }.getType());
Gson-Gson=new-Gson();
List finalObjectList=gson.fromJson(Person,new-TypeToken()){
}.getType());
我希望这对你有帮助:)

@RequestMapping(method = RequestMethod.POST)
public String newPerson(@RequestParam("personModel") String person,    BindingResult result) {
Gson gson = new Gson();
Person finalObject = gson.fromJson(person, Person.class);
// Person has just firstname and lastname fields
 }
Gson gson = new Gson();
List<Person> finalObjectList = gson.fromJson(Person, new TypeToken<List<Person>>() {
    }.getType());