`

spring mvc 返回json 乱码解决

阅读更多

 

SpringMVC的@ResponseBody注解可以将请求方法返回的对象直接转换成JSON对象,但是当返回值是String的时候,中文会乱码

原因是因为其中字符串转换和对象转换用的是两个转换器,而String的转换器中固定了转换编码为"ISO-8859-1"

解决办法:

1.返回字符串时,将字符串结果转换

 

return new String("你好".getBytes(), "ISO-8859-1");  

 2.添加@RequestMapping注解,配置produces的值

 

 

@RequestMapping(value = "/get", produces = {"application/json;charset=UTF-8"})  

 或者

 

 

@RequestMapping(value = "/get", produces = {"text/javascript;charset=UTF-8"})  
或者
@RequestMapping(value="/test",produces="text/plain;charset=UTF-8"

 3.也可以 修改默认的字符串的转换器StringHttpMessageConverter

 

 4.也可以配置 spring mvc的转化(跟spring 版本有关系 ,有的版本不好使)

 

 <mvc:annotation-driven>  
        <mvc:message-converters>  
            <bean class="org.springframework.http.converter.StringHttpMessageConverter" >  
	            <property name = "supportedMediaTypes">
					<list>
	 					 <value>text/plain;charset=UTF-8</value>
	 				</list>
				</property>
            </bean>  
            <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">  
			    <property name="supportedMediaTypes">  
			        <list>  
			            <value>applicaton/json;charset=UTF-8</value>  
			        </list>  
			    </property>  
			</bean>  
        </mvc:message-converters>  
    </mvc:annotation-driven>  

 

 

   

 

分享到:
评论

相关推荐

    详解Spring MVC3返回JSON数据中文乱码问题解决

    总的来说,解决Spring MVC3返回JSON数据中文乱码的问题,关键在于正确设置字符编码。无论是使用Java的PrintWriter直接写入UTF-8编码的数据,还是先将数据编码为GBK后写入到ServletOutputStream中,又或者是在框架...

    json 中文乱码解决方案

    ### json 中文乱码解决方案 在处理JSON数据时,经常会出现中文乱码的问题,尤其是在不同编码格式间进行转换时更为常见。本文将详细介绍如何解决JSON中的中文乱码问题,并提供几种简单实用的方法来帮助开发者避免这...

    Spring MVC请求参数与响应结果全局加密和解密详解

    Spring MVC请求参数与响应结果全局加密和解密详解 在本文中,我们将详细介绍Spring MVC请求参数与响应结果全局加密和解密的相关知识点,包括请求参数的加密和解密、响应结果的加密和解密、ContentType的处理等。 ...

    彻底解决Spring MVC中文乱码问题的方案

    本篇文章将深入探讨如何彻底解决Spring MVC中的中文乱码问题,以便于开发者能够流畅地处理中文数据。 首先,当用户通过表单提交中文参数时,可能会遇到乱码问题。确保JSP页面的编码设置为UTF-8,例如在页面头部添加...

    spring mvc 自學筆記

    ### Spring MVC 中的乱码及 RESTful 风格支持 #### 解决乱码问题 在 Spring MVC 中处理中文乱码通常有两种方法: - **设置字符编码过滤器**:通过配置一个全局的字符编码过滤器来解决所有请求的乱码问题。 ```java...

    spring注解出现中文乱码

    综上所述,解决Spring框架中使用注解处理JSON数据时出现中文乱码的问题主要涉及三个方面的内容:明确客户端和服务端之间的字符集编码、检查并修正XML配置文件以及引入必要的依赖库。通过对这些问题的细致分析和合理...

    spring MVC所需jar包和filter的配置

    在开发基于Spring MVC的Web应用程序时,正确配置所需的jar包和Filter是至关重要的步骤。Spring MVC是一个强大的MVC(Model-View-Controller)框架,它为构建Java Web应用提供了丰富的功能和灵活性。以下是对标题和...

    SSM框架整合(解决中文乱码,二级缓存,JSON,事务)

    Spring MVC可以通过Jackson或Gson库自动将Java对象转换为JSON格式发送给前端,反之亦然。在Controller方法中,可以使用`@ResponseBody`注解将返回值直接转化为JSON响应。 根据提供的文件名,`test.sql`可能包含一些...

    Spring MVC面试题(2022最新版)

    当控制器方法上标注了`@ResponseBody`时,Spring MVC会将方法的返回值直接序列化为JSON或XML格式,并作为HTTP响应体返回给客户端。前端可以通过AJAX技术(如jQuery的$.ajax()方法)发送异步请求,并处理后端返回的...

    Java Web项目中Spring框架处理JSON格式数据的方法

    为了在Spring MVC中返回JSON格式的数据,通常会使用一些流行的JSON库如Gson或Jackson。例如,Gson是一个由Google提供的可以将Java对象转换成JSON格式字符串的库。开发者可以通过new Gson().toJson()方法将Java对象...

    Spring MVC面试宝典1.pdf

    ##### 3.4 如何解决POST请求中文乱码问题,GET的又如何处理呢? - **POST请求**:在web.xml中配置过滤器CharacterEncodingFilter来设置字符编码。 - **GET请求**:同样可以通过配置过滤器解决,也可以通过修改Tomcat...

    Springmvc如何返回xml及json格式数据

    以下是关于如何在Spring MVC中返回XML和JSON格式数据的详细讲解。 1. **返回XML格式数据** 要返回XML格式的数据,首先,确保返回的内容是符合XML规范的字符串或对象。如果返回的是字符串,那么需要设置正确的字符...

    JSP乱码解决方案

    例如,使用Spring MVC时,可以配置`RequestMappingHandlerAdapter`来指定编码: ```java @Configuration public class WebConfig { @Bean public WebMvcConfigurer webMvcConfigurer() { return new ...

    struts2中通过json传值解决乱码问题的实现方法

    此外,除了Struts2框架外,其他如Spring MVC、Hibernate等Java框架同样面临乱码的问题,处理方法大同小异。了解编码和解码机制,掌握正确的字符集使用方法,是每一位Java Web开发者必备的技能。 总之,在使用Struts...

    解决SpringMvc后台接收json数据中文乱码问题的几种方法

    本文将深入探讨两种解决SpringMvc后台接收JSON数据中文乱码问题的方法。 1. **使用Ajax传输数据** 当前端通过Ajax使用JSON格式向SpringMvc后台发送数据时,可能出现中文乱码。这通常是因为服务器默认的字符编码不...

    SpringMVC面试题.pdf

    - 对于响应内容的乱码,可以在视图中设置相应编码,或者在返回JSON时,确保服务器与客户端之间统一编码。 以上是对Spring MVC面试中常见的一些知识点的详细解答,这些内容涵盖了Spring MVC的基本概念、工作流程、...

    Spring MVC 关于controller的字符编码问题

    除了上述的字符编码解决策略,Spring MVC还提供了多种参数绑定注解来处理请求中的不同数据类型: - **`@RequestParam`**:用于绑定HTTP请求参数,适用于GET和POST请求。例如,`@RequestParam("name") String name`...

    jackon 2.9.1

    总结来说,Jackson 2.9.1是一个用于处理JSON的Java库,常与Spring MVC结合使用,通过`@ResponseBody`注解实现将Java对象直接转换为JSON并返回给客户端。在实际应用中,需要注意依赖包的正确引入,以及处理字符集以...

    SpringMVC中解决@ResponseBody注解返回中文乱码问题

    总的来说,解决SpringMVC中`@ResponseBody`注解返回中文乱码问题的关键在于正确配置`HttpMessageConverter`,确保其支持UTF-8编码,并将这些配置放在`&lt;mvc:annotation-driven&gt;`元素之前。通过上述方法,可以有效地...

    springMVC3使用@ResponseBody向浏览器返回 json,注意区分jar包前缀

    &lt;bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"&gt; &lt;property name="messageConverters"&gt; &lt;list&gt; &lt;!-- Support JSON --&gt; &lt;bean class="org.spring...

Global site tag (gtag.js) - Google Analytics