json的使用、配置、解析(fastjson)

本文介绍如何在SpringMVC项目中通过配置FastJSON实现返回JSON数据的方法,包括springmvc.xml配置示例及Controller层的具体实现,并提供了解决IE浏览器执行AJAX请求时可能出现的下载文件问题的方案。

springmvc.xml配置文件中

<!-- 启动Springmvc注解驱动 -->

        <mvc:annotation-driven/>
 <!-- 返回json 方法一 需要导入 fastjson.jar包 --> 
        <mvc:annotation-driven>
        <mvc:message-converters register-defaults="false">
            <!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
            <bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->
                        <value>text/html;charset=UTF-8</value>
                        <value>application/json;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
        </mvc:message-converters>

    </mvc:annotation-driven>

springmvc.xml配置参考链接

http://my.oschina.net/haopeng/blog/324934

 

controller

@RequestMapping("/getjson" )

    @ResponseBody

    public ItemCustom testJson( int id) throws Exception {

        System. out.println(id);

         return it .getCustomById(2);

    }

jsp

$.ajax({

                url: "${pageContext.request.contextPath }/json/getjson.do?id=1",

                contentType: "application/json;charset=utf-8" ,

                success: function(data){

                         var json=$.parseJSON(data);

                        alert(json.name);

                        alert(json.id);

                        alert(json.price);

                },

                data: '{"id":"2"}',

                error: function(){

                    alert( "获取数据错误" );

                },

                type: "post",

                

            } )

fastjson的下载链接:

http://repo1.maven.org/maven2/com/alibaba/fastjson/1.2.17/fastjson-1.2.17.jar

 

 

 

转载于:https://my.oschina.net/begin01running/blog/744206

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值