SpringMVC解决返回JSON格式,IE显示保存文件

这是我从网上搜索总结得来的


使用了Spring4.1.6


首先为什么IE会提示保存文件?

因为SpringMVC默认的Json转换器设置响应头设置为application/json

但是至少IE9不支持application/json格式,这时候需要更改json返回的响应头为”text/html;chartset=UTF-8“了.


因为SpringMVC一般都加了这个

<mvc:annotation-driven />

这个有很多好处

<!-- <mvc:annotation-driven/> 会自动注册RequestMappingHandlerMapping 、RequestMappingHandlerAdapter
        与 ExceptionHandlerExceptionResolver 三个bean。 还将提供以下支持: 支持使用 ConversionService
        实例对表单参数进行类型转换 – 支持使用 @NumberFormatannotation、@DateTimeFormat – 注解完成数据类型的格式化
        支持使用 @Valid 注解对 JavaBean 实例进行 JSR 303 验证 – 支持使用 @RequestBody 和 @ResponseBody
 注解 -->


这个时候就需要更改JSON转换器的返回响应头了

需要这三个JAR

jackson-annotations-2.5.0.jar,jackson-core-2.5.0.jar,jackson-databind-2.5.0.jar


<mvc:annotation-driven />注解改成这样

<mvc:annotation-driven>
        <mvc:message-converters register-defaults="true">

            <bean
                class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <value>text/html; charset=UTF-8</value>

                    </list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>


然后就大功告成了,当然了,这好像只完成了返回Json对象为Map的响应头更改,

是不是此时我也没有做实验。

反正返回Map的方法IE是不会再提示保存文件了



  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值