Spring MVC 的json问题(406 Not Acceptable)

Controller中方法如下:

 

 @RequestMapping("/flexgrid")
    @ResponseBody
    public Flexgrid flexgrid(BaseBook baseBook) {
	return baseBookService.flexgrid(baseBook);
    }

然后需要将返回的数据做json处理,在这里我们调用第三方的包jackson。

需要导入jackson-mapper-asl-1.9.10.jar和jackson-core-asl-1.9.10.jar。
然后在自己的Spring配置文件中进行下数据格式的配置:

<!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
	<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
		<property name="supportedMediaTypes">
			<list>
				<value>text/html;charset=UTF-8</value>
			</list>
		</property>
	</bean>

	<!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
	<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
		<property name="messageConverters">
			<list>
				<ref bean="mappingJacksonHttpMessageConverter" /><!-- json转换器 -->
			</list>
		</property>
	</bean>

 之所以有的网友会报406错误,是因为没有对返回的数据做Json处理。

Spring的标签只是声明返回的是一个实体对象,需要自己去转换成json.

 

 

你可能感兴趣的:(spring,json)