zoukankan      html  css  js  c++  java
  • springmvc之ResponseBody响应json数据

    springmvc之ResponseBody响应json数据

    该注解用于将 Controller 的方法返回的对象,通过 HttpMessageConverter 接口转换为指定格式的数据如:json,xml 等,通过 Response 响应给客户端

    示例

    需求:使用@ResponseBody 注解实现将 controller 方法返回对象转换为 json 响应给客户端。

    前置知识点:Springmvc 默认用 MappingJacksonHttpMessageConverter 对json数据进行转换,需要加入jackson 的包。

    注:2.7.0以下的版本用不了

    jsp代码

    <!-- 测试异步请求 --> 
    <input type="button" value="测试ajax请求json和响应json" id="testJson"/>
    
    <script type="text/javascript"src="${pageContext.request.contextPath}/js/jquery.min.js"></script> 
    <script type="text/javascript">
    $(function(){
    	$("#testJson").click(function(){
            $.ajax({
                type:"post",
                url:"${pageContext.request.contextPath}/testResponseJson",
                contentType:"application/json;charset=utf-8",
                data:JSON.stringify({"id":1,"name":"test","money":999.0}),
                dataType:"json",
                success:function(data){
                	alert(data);
    			}
    		});
    	});
    })
    </script>
    

    控制器代码

    /**
    * 响应 json 数据的控制器
    * @author 黑马程序员
    * @Company 
    * @Version 1.0
    */
    @Controller("jsonController")
    public class JsonController {
        /**
        * 测试响应 json 数据
        */
    	@RequestMapping("/testResponseJson")
    	public @ResponseBody Account testResponseJson(@RequestBody Account account) {
            System.out.println("异步请求:"+account);
            return account; 
    	} 
    }
    

    配置json转换器

    如果不使用注解驱动<mvc:annotation-driven />,就需要给处理器适配器配置json转换器

    在springmvc.xml配置文件中,给处理器适配器加入json转换器:

    <!--处理器适配器 -->
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
        <property name="messageConverters">
        	<list>
        		<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
        	</list>
        </property>
    </bean>
    
    记得快乐
  • 相关阅读:
    PS插件安装
    在linux中安装Python
    快慢指针 | 环形链表
    Intel VT-x 支持但处于禁用状态开启
    函数
    连接(交叉连接、内连接、外连接、自连接)
    游标cursor 与循环fetch
    Identity 自增长标识
    Trigger 触发器
    Procedure 存储过程
  • 原文地址:https://www.cnblogs.com/Y-wee/p/13840563.html
Copyright © 2011-2022 走看看