`
sharong
  • 浏览: 492593 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
D1667ae2-8cfc-3b68-ac7c-5e282789fa4a
论开源
浏览量:8695
7eb53364-fe48-371c-9623-887640be0185
Spring-data-j...
浏览量:13029
社区版块
存档分类
最新评论

spring 4.x下让http请求返回json串

阅读更多
当前很多应用已经开始将响应返回为json串,所以基于springframework框架开发的服务端程序,让响应返回json字符串成为了一种常用手段。
这里介绍一下如何在spring-MVC框架下方便快捷的返回json字符串。

首先,需要在controller类的方法名头上加@ReponseBody注解,但是只增加这个注解是不够的,在使用httpclient4.5.x模拟post请求时,出现http status 406的错误:
406 Not Acceptable 指定的资源已经找到,但它的MIME类型和客户在Accpet头中所指定的不兼容(HTTP 1.1新)

如果采用Spring-MVC框架开发,那么解决办法如下:
1)在spring-servlet.xml里增加
<mvc:annotation-driven>
	<mvc:message-converters register-defaults="true">
		<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"
			p:supportedMediaTypes="*/*" />
	</mvc:message-converters>
</mvc:annotation-driven>

2)maven项目,在pom.xml里增加
	<dependency>
		<groupId>org.codehaus.jackson</groupId>
		<artifactId>jackson-mapper-asl</artifactId>
		<version>1.9.13</version>
	</dependency>
	<dependency>
		<groupId>org.codehaus.jackson</groupId>
		<artifactId>jackson-core-asl</artifactId>
		<version>1.9.13</version>
	</dependency>

gradle项目,在build.gradle文件的dependencies项下增加
	compile 'org.codehaus.jackson:jackson-mapper-asl:1.9.13'
	compile 'org.codehaus.jackson:jackson-core-asl:1.9.13'

附:我在测试时用httpclient4.5.x模拟post请求时返回的数据
response.toString():
HttpResponseProxy{HTTP/1.1 200 OK [Server: Apache-Coyote/1.1, Content-Type: application/json;charset=UTF-8, Transfer-Encoding: chunked, Date: Tue, 29 Jul 2015 08:42:29 GMT]}

EntityUtils.toString(entity, "utf-8"):
{"code":0,"flag":false,"message":"用户名错误,请填写手机号码或者Email!","uid":-1,"mobile":null,"email":null,"username":null}
8
1
分享到:
评论

相关推荐

    springmvc, spring5.x , hibernate5.x 整合

    接着,我们定义Spring MVC的Controller,它将接收HTTP请求,通过Service层调用DAO层完成业务逻辑,最后返回视图或者JSON响应。 Spring MVC中的ModelAndView或Model对象用于传递数据到视图,而视图解析器(如...

    spring3.x前后端使用json传输数据

    在现代Web开发中,前后端分离是常见的架构模式,Spring框架的Spring MVC模块提供了一种高效的方式处理HTTP请求。在Spring 3.x版本中,JSON作为一种轻量级的数据交换格式,广泛用于前后端数据传输。本篇文章将详细...

    spring 3.x 中Restful风格服务开发 demo

    在上面的代码中,`@RequestMapping`用于指定URL路径,`@GetMapping`、`@PostMapping`、`@PutMapping`和`@DeleteMapping`是Spring 4.x以后的简化版,但在Spring 3.x中我们需要使用`@RequestMapping`配合`method`属性...

    spring boot3.x结合spring security最新版实现jwt登录验证

    本教程将详细讲解如何在Spring Boot 3.x版本中结合Spring Security的最新版实现JWT(JSON Web Token)登录验证。 首先,让我们了解JWT。JWT是一种轻量级的身份认证和授权机制,它以JSON对象的形式在客户端和服务器...

    基于spring4.x的RESTful环境搭建

    在Spring框架中,我们主要使用`@RestController`注解来创建RESTful控制器,它结合了`@Controller`和`@ResponseBody`的功能,用于处理HTTP请求并返回JSON或XML等数据格式。 1. **配置Spring MVC**:首先,我们需要在...

    最新版本 jackson 2.8.2 jar与spring 4.x @ResponseBody配合使用

    标题提到的"最新版本 Jackson 2.8.2 jar与Spring 4.x @ResponseBody配合使用"涉及到的关键知识点包括Jackson的三个核心模块,以及如何在Spring MVC中利用这些模块实现RESTful API的数据响应。 1. **Jackson核心模块...

    Spring.3.x企业应用开发实战(完整版).part2

    7.10.4 在其他Web应用服务器下的配置 7.11 小结 第3篇 数据访问 第8章 Spring对DAO的支持 8.1 Spring的DAO理念 8.2 统一的异常体系 8.2.1 Spring的DAO异常体系 8.2.2 JDBC的异常转换器 8.2.3 其他持久技术的异常...

    Spring MVC返回JSON数据 用到的jar包

    &lt;bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" /&gt; &lt;!-- Spring配置类 示例 --&gt; @Configuration @EnableWebMvc public class WebConfig implements ...

    自定义shiro实现识别ajax请求的拒绝返回json,还是普通返回页面

    如果判断是 AJAX 请求,我们可以通过 `response.getWriter().write(jsonErrorMessage)` 将错误信息以 JSON 格式写入响应,其中 `jsonErrorMessage` 是一个包含错误信息的 JSON 字符串。对于非 AJAX 请求,我们可以像...

    HttpClient模拟get,post请求并发送请求参数(json等)

    然而,需要注意的是,随着Java生态的发展,Spring Framework中的RestTemplate或WebClient(针对Spring Boot 2.x及以上版本)也成为了常用的HTTP客户端工具,它们提供了更高级别的抽象和更好的集成性。

    Spring3.x企业应用开发实战(完整版) part1

    7.10.4 在其他Web应用服务器下的配置 7.11 小结 第3篇 数据访问 第8章 Spring对DAO的支持 8.1 Spring的DAO理念 8.2 统一的异常体系 8.2.1 Spring的DAO异常体系 8.2.2 JDBC的异常转换器 8.2.3 其他持久技术的异常...

    基于注解的spring_3.0.x_MVC学习笔记

    4. **内容协商**:Spring 3.0支持多种媒体类型的响应,例如JSON、XML等,通过@Produces和@Consumes注解进行内容类型的选择。 5. **模板引擎集成**:Spring 3.0加强了对各种视图技术(如FreeMarker、Thymeleaf、JSP...

    spring4 jackson2.5.3.jar 包

    同样,当返回JSON响应时,只需要返回一个Java对象,Spring会调用Jackson将其转换为JSON字符串。 例如,假设有一个简单的`User`类: ```java public class User { private String name; private int age; // ...

    使用Spring4 MVC 构建RESTful服务器,输出JSON格式的数据结构

    Spring4 MVC作为Java领域最流行的MVC框架之一,提供了一流的支持来构建RESTful API,尤其适合输出JSON格式的数据结构。本文将深入探讨如何使用Spring4 MVC实现这一目标。 首先,理解REST(Representational State ...

    Mastering Spring MVC 4(2015.09)源码

    此外,Spring MVC 4还支持RESTful风格的Web服务,通过@RequestMapping注解的produces和consumes属性,可以处理不同格式的HTTP请求和响应,如JSON、XML等。 总的来说,"Mastering Spring MVC 4(2015.09)源码"提供了...

    SpringMVC4.X:Spring MVC 4.X REST JSON示例

    下面,我们将详细探讨Spring MVC 4.X REST JSON示例中的关键知识点。 1. **Spring MVC 4.1.4**: 这是Spring MVC框架的一个稳定版本,包含了各种性能优化和新特性,比如对Java 8的全面支持,以及改进的类型安全的...

    CXF2.6 spring 提供rest服务输出xml或json等格式数据

    &lt;bean class="com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider"/&gt; ``` 在这里,`address="/"`指定了服务的基础URL,`serviceBeans`包含了服务的实现类,`providers`则添加了JSON序列化/反序列化的...

    Springmvc 4.x利用@ResponseBody返回Json数据的方法

    在Spring MVC 4.x版本中,开发者可以使用@ResponseBody注解来简化控制器层向客户端返回JSON格式数据的过程。 ### @ResponseBody注解使用方法 @ResponseBody注解可以作用于方法上,它会指示Spring MVC框架将该方法...

    SpringSecurity3.0.x官方参考文档(英文+中文双解版)

    **Spring Security 3.0.x 知识点详解** Spring Security 是一个强大的和高度可定制的身份验证和访问控制框架,广泛应用于Java企业级应用的安全管理。Spring Security 3.0.x 版本是该框架的一个重要里程碑,它提供了...

    spring-mvc-jsonview源代码

    2. 创建控制器:定义一个处理AJAX请求的控制器方法,返回JSON数据。 3. 前端页面:使用JavaScript(如jQuery的$.ajax或fetch API)发起AJAX请求,指定请求类型为GET或POST,接收JSON响应。 4. 测试:运行应用,通过...

Global site tag (gtag.js) - Google Analytics