如何从我的 spring 控制器发送 json 响应?
How I can send json response from my spring controller?
我是主题的新手。我怎样才能 return JSON 来自我的控制器的数据,使用类似的东西(使用 ResponseBody)
@RequestMapping(value = "/ajaxtest", method = RequestMethod.GET)
@ResponseBody
public Set<String> ajaxTest() {
Set<String> records = new HashSet<String>();
records.add("Record #1");
records.add("Record #2");
return records;
}
我试过使用 Jackson,但是有 http 406 错误。
我应该在 Spring 版本 4.0.3 中使用哪个正确版本的 Jackson,使用的算法是什么?
更新
Ajax 通话
<button id="btn">Click!</button>
<script>
$("#btn").click(
function sendAjax() {
$.ajax({
url: "/ajaxtest",
dataType: "json",
success: function(data) {
alert(data);
},
error:function() {
alert("error");
}
});
})
</script>
对于转换为 json 请求,您必须将以下 3 jar 添加到您的项目构建路径中。
Jackson jar 用于将 HTTP 请求转换为 jason 格式。
同时提及 headear=content-type=application/json
这些是 jar 文件
jackson-mapper-asl.jar
jackson-core-asl.jar
jackson-jaxrs.jar
如果您使用的是 Maven,则可以在 pom.xml
中包含以下依赖项
Jackson Mapper 版本 1 足以将您的对象转换为 JSON 对象:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
或者您也可以选择最新的 Jackson 版本,
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.6.0</version>
</dependency>
我是主题的新手。我怎样才能 return JSON 来自我的控制器的数据,使用类似的东西(使用 ResponseBody)
@RequestMapping(value = "/ajaxtest", method = RequestMethod.GET)
@ResponseBody
public Set<String> ajaxTest() {
Set<String> records = new HashSet<String>();
records.add("Record #1");
records.add("Record #2");
return records;
}
我试过使用 Jackson,但是有 http 406 错误。 我应该在 Spring 版本 4.0.3 中使用哪个正确版本的 Jackson,使用的算法是什么? 更新 Ajax 通话
<button id="btn">Click!</button>
<script>
$("#btn").click(
function sendAjax() {
$.ajax({
url: "/ajaxtest",
dataType: "json",
success: function(data) {
alert(data);
},
error:function() {
alert("error");
}
});
})
</script>
对于转换为 json 请求,您必须将以下 3 jar 添加到您的项目构建路径中。 Jackson jar 用于将 HTTP 请求转换为 jason 格式。
同时提及 headear=content-type=application/json
这些是 jar 文件
jackson-mapper-asl.jar
jackson-core-asl.jar
jackson-jaxrs.jar
如果您使用的是 Maven,则可以在 pom.xml
中包含以下依赖项Jackson Mapper 版本 1 足以将您的对象转换为 JSON 对象:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
或者您也可以选择最新的 Jackson 版本,
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.6.0</version>
</dependency>