一、存在问题
当我们使用Ajax,需要提示语时发现却显示不出来。
代码完全行得通,配置和依赖都没问题!
那为什么显示不出来呢?
(本该显示的页面)
实际上显示的页面 ( 如下)
在状态值为200的情况下,
首先我们要怀疑,是json乱码问题。
但是却发现我们也配置了这行代码:
//produces:指定响应体返回类型和编码
produces = "application/json;charset=utf-8"
二、解决方法
把这行代码删除掉
然后运行,发现显示提示语了:(不过全是???)
具体解决方案
在springmvc配置文件上添加一段消息StringHttpMessageConverter转换配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
">
<!--开启扫描组件-->
<context:component-scan base-package="com.jin.controller"/>
<!--开启注解驱动-->
<mvc:annotation-driven>
<!--StringHttpMessageConverter转换配置-->
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<constructor-arg value="UTF-8"/>
</bean>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper">
<bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean">
<property name="failOnEmptyBeans" value="false"/>
</bean>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
</beans>
大功完成!