Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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
Java 在spring中使用ajax调用从控制器获取映射_Java_Ajax_Spring_Jsp_Spring Mvc - Fatal编程技术网

Java 在spring中使用ajax调用从控制器获取映射

Java 在spring中使用ajax调用从控制器获取映射,java,ajax,spring,jsp,spring-mvc,Java,Ajax,Spring,Jsp,Spring Mvc,我使用ajax从一个平面jsp页面调用控制器,不使用outformsubmit,我想从控制器返回一个hashmap到jsp页面,我可以迭代该页面来显示hashmap的值 如果我在响应中发送消息,我可以在success内部的ajax函数中获得该消息:但是如何获得整个映射。因为如果您甚至在请求属性中进行了设置,您就无法在jsp页面中获得该属性。请帮助。在控制器的方法上使用注释。例如: @RequestMapping(value = "/yourAjaxRequestUrl", method = Re

我使用ajax从一个平面jsp页面调用控制器,不使用outformsubmit,我想从控制器返回一个hashmap到jsp页面,我可以迭代该页面来显示hashmap的值

如果我在响应中发送消息,我可以在success内部的ajax函数中获得该消息:但是如何获得整个映射。因为如果您甚至在请求属性中进行了设置,您就无法在jsp页面中获得该属性。请帮助。

在控制器的方法上使用注释。例如:

@RequestMapping(value = "/yourAjaxRequestUrl", method = RequestMethod.POST)
public
@ResponseBody
Map<String, Object> performOperation(@RequestParam("someParam") String someParam) {

    //Do something

    return Collections.<String, Object>singletonMap("yourObject", yourObject);
}
@RequestMapping(value=“/yourAjaxRequestUrl”,method=RequestMethod.POST)
公众的
@应答器
映射性能操作(@RequestParam(“someParam”)字符串someParam){
//做点什么
返回Collections.singletonMap(“yourObject”,yourObject);
}

这将返回一个JSON格式的对象,映射中的所有对象都可以通过javascript访问。

我认为您将服务器端代码与客户端代码混淆了。AJAX是客户端,JSP是服务器端。您无法在两者之间传递数据

在进行AJAX调用时,JSP已经完成了执行,它生成的标记包含在浏览器中,包括AJAX代码

如果您的Spring控制器返回JSON(可能您将地图表示为JavaScript关联数组),那么您可以使用jQuery迭代该数组并根据其内容创建动态HTML元素