码迷,mamicode.com
首页 > 编程语言 > 详细

spring mvc 返回json

时间:2015-01-03 19:47:45      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:

服务器端返回的是文本,客户端得到文本后将文本转换成json就可以了,服务器端将对象转换成json 的文本形式,并且需要设定文本的类型为text/plain,charset=UTF-8

所以在 application-context 中添加StringConverter及jsonConvert的bean 以及servlet mvc 注解处理适配器

<bean id="stringConverter"

        class="org.springframework.http.converter.StringHttpMessageConverter">

        <property name="supportedMediaTypes">

            <list>

                <value>text/plain;charset=UTF-8</value>

            </list>

        </property>

    </bean>

 

    <!-- 用于将对象转换为 JSON  -->

    <bean id="jsonConverter"

        class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>

    <bean

        class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">

        <property name="messageConverters">

            <list>

                <ref bean="stringConverter" />

                <ref bean="jsonConverter" />

            </list>

        </property>

    </bean>

在Controller 函数中要表明 返回值是ResponseBody的内容

    @RequestMapping("/ajax2.do")

    public @ResponseBody UserInfo ajax2(String userId){

       

        System.out.println(userId);

        UserInfo user = new UserInfo();

        if("1001".equals(userId)){

            user.setUserId(1001);

            user.setUserName("悟空");

        }else{

            user.setUserId(1002);

            user.setUserName("八戒");

        }

   

        return user;

    }

Js 代码

$("#but2").click(function(){

           

            $.post("ajax2.do",{userId:$("#userId2").val()},function(data){

               

                $("#info2").html(data.userId+"---"+data.userName);

               

            },"json");

});

spring mvc 返回json

标签:

原文地址:http://www.cnblogs.com/oftenlin/p/4199850.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!