`
xjg396
  • 浏览: 47150 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

spring mvc注解 @ResponseBody异步返回json数据的时候乱码

    博客分类:
  • java
阅读更多
最近在做一个项目,spring mvc + mybatis。当用 @ResponseBody返回一个json中文数据的时候,出现了乱码问题,按照网上的说法,也配置了

<!-- 框架控制层 controller-->
	<!-- 注解探测器 -->
	<context:component-scan base-package="com.wxws.*.controller,com.wxws.*.*.controller" />
	<mvc:annotation-driven />

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
		<property name="messageConverters">
			<list>
				<bean class="org.springframework.http.converter.StringHttpMessageConverter">
					<property name="supportedMediaTypes">
						<list>
							<value>text/plain;charset=UTF-8</value>
						</list>
					</property>
				</bean>
			</list>
		</property>
</bean>

但还是不起作用,后来继承了AbstractHttpMessageConverter这个类,将spring mvc 异步默认的编码方式也改了,还是不行…… 
    后来才发现是
<!-- 框架控制层 controller-->
	<!-- 注解探测器 -->
	<context:component-scan base-package="com.wxws.*.controller,com.wxws.*.*.controller" />
	<mvc:annotation-driven />
这个的顺序问题,更改后
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
		<property name="messageConverters">
			<list>
				<bean class="org.springframework.http.converter.StringHttpMessageConverter">
					<property name="supportedMediaTypes">
						<list>
							<value>text/plain;charset=UTF-8</value>
						</list>
					</property>
				</bean>
			</list>
		</property>
</bean>

<!-- 框架控制层 controller-->
	<!-- 注解探测器 -->
	<context:component-scan base-package="com.wxws.*.controller,com.wxws.*.*.controller" />
	<mvc:annotation-driven />



这样,页面显示的就不再是乱码了!好蛋痛的问题!
分享到:
评论

相关推荐

    Spring MVC面试题(2024最新版).docx

    @ResponseBody注解用于将方法返回的对象自动转换为JSON或XML格式的响应;@PathVariable用于从URL中获取参数,而@RequestParam用于从请求参数中获取数据。 Spring MVC与Struts2是两种流行的Java Web框架,它们都实现...

    spring mvc 自學筆記

    在 Spring MVC 中,可以轻松地与 AJAX 结合,实现异步数据交换。对于 JSON 数据的处理,Spring 提供了内置的支持。 - **使用 `@RequestBody` 和 `@ResponseBody`**:这两个注解分别用于读取和写入 JSON 数据。 - **...

    Spring MVC面试题(2022最新版)

    此外,还可以使用`@RestController`,该注解是`@Controller`和`@ResponseBody`的组合,适用于只返回JSON或XML数据而不返回视图的情况。 **@Controller注解的作用**:用于定义一个类为Spring MVC控制器,该类将处理...

    Spring MVC面试宝典1.pdf

    在控制器中,可以使用@ResponseBody注解返回JSON数据给前端。 ##### 3.4 如何解决POST请求中文乱码问题,GET的又如何处理呢? - **POST请求**:在web.xml中配置过滤器CharacterEncodingFilter来设置字符编码。 - **...

    用ajax传递json到前台中文出现问号乱码问题的解决办法

    具体问题出现在使用了SpringMVC框架的开发场景中,在Controller层使用了@ResponseBody注解来直接返回JSON数据。该注解使得Spring MVC框架会将返回的对象自动转换为JSON格式的字符串。然而,默认情况下,Spring框架...

    EXT异步提交FORM表单

    - **处理返回值**:Spring MVC支持直接返回字符串类型的结果,这些结果会被自动转换成JSON格式发送给客户端。 ```java @ResponseBody public String submit(...) { return "{\"status\":\"success\"}"; } ```...

    Springmvc完成ajax功能实例详解

    由于有`@ResponseBody`注解,Spring MVC会自动将返回的字符串转换成JSON格式。 如果你需要返回一个Java对象,比如`User`,只需改变方法的返回类型: ```java @RequestMapping("Ajax2") @ResponseBody public User ...

    SpringMVC+Jquery实现Ajax功能

    2. **返回响应数据**:在Controller方法中,可以构建JSON对象并使用`@ResponseBody`注解将其返回。SpringMVC会自动将其转换成JSON格式,供jQuery的Ajax请求接收。 3. **处理异常**:可以使用`@ExceptionHandler`...

    SpringMVC结合ajaxfileupload.js实现文件无刷新上传

    -- 配置MVC注解驱动 --&gt; &lt;mvc:annotation-driven /&gt; &lt;!-- 视图解析器 --&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; ``` 接下来,我们关注客户端的JavaScript...

Global site tag (gtag.js) - Google Analytics