`
ainn2006
  • 浏览: 64389 次
  • 来自: ...
社区版块
存档分类
最新评论

spring mvc 接收json

 
阅读更多
接收JSON
使用 @RequestBody 注解前台只需要向 Controller 提交一段符合格式的 JSON,Spring 会自动将其拼装成 bean。
1)在上面的项目中使用第一种方式处理返回JSON的基础上,增加如下方法:
Java代码  收藏代码

    @RequestMapping(value="/add",method=RequestMethod.POST, headers = {"content-type=application/json","content-type=application/xml"}) 
    @ResponseBody 
    public Object addUser(@RequestBody User user) 
    { 
        System.out.println(user.getName() + " " + user.getAge()); 
        return new HashMap<String, String>().put("success", "true"); 
    } 

这里的POJO如下:
Java代码  收藏代码

    public class User { 
        private String name; 
        private String age; 
     
        //getter setter 
    } 


2)而在前台,我们可以用 jQuery 来处理 JSON。从这里,我得到了一个 jQuery 的插件,可以将一个表单的数据返回成JSON对象:
Js代码  收藏代码

    $.fn.serializeObject = function(){ 
        var o = {}; 
        var a = this.serializeArray(); 
        $.each(a, function(){ 
            if (o[this.name]) { 
                if (!o[this.name].push) { 
                    o[this.name] = [o[this.name]]; 
                } 
                o[this.name].push(this.value || ''); 
            } 
            else { 
                o[this.name] = this.value || ''; 
            } 
        }); 
        return o; 
    }; 


   以下是使用 jQuery 接收、发送 JSON 的代码:
Js代码  收藏代码

    $(document).ready(function(){ 
        jQuery.ajax({ 
            type: 'GET', 
            contentType: 'application/json', 
            url: 'jsonfeed.do', 
            dataType: 'json', 
            success: function(data){ 
                if (data && data.status == "0") { 
                    $.each(data.data, function(i, item){ 
                        $('#info').append("姓名:" + item.name +",年龄:" +item.age); 
                    }); 
                } 
            }, 
            error: function(){ 
                alert("error") 
            } 
        }); 
        $("#submit").click(function(){ 
            var jsonuserinfo = $.toJSON($('#form').serializeObject()); 
            jQuery.ajax({ 
                type: 'POST', 
                contentType: 'application/json', 
                url: 'add.do', 
                data: jsonuserinfo, 
                dataType: 'json', 
                success: function(data){ 
                    alert("新增成功!"); 
                }, 
                error: function(){ 
                    alert("error") 
                } 
            }); 
        }); 
    }); 


但是似乎用Spring这套东西真是个麻烦的事情,相对Jersey对RESTful的实现来看,确实有很多不简洁的地方。

分享到:
评论

相关推荐

    Spring mvc 接收json对象

    本文通过代码实例介绍spring mvc 接收json数据的方法,具体详情如下所示: 接收JSON 使用 @RequestBody 注解前台只需要向 Controller 提交一段符合格式的 JSON,Spring 会自动将其拼装成 bean。 1)在上面的项目中...

    spring mvc拦截器过滤json中的null值

    spring mvc拦截器,过滤json数据中的null值,将null变成空字符串,内含截图,及jar包

    解决spring mvc 返回json数据到ajax报错parseerror问题

    最近使用ajax接收spring mvc传过来的json数据时总是出现parseerror的错误,下面通过本文给大家分享spring mvc 返回json数据到ajax报错parseerror问题的解决方法,需要的朋友参考下吧

    springmvc操作json数据所需的jar包

    附件是springmvc开发中与前台进行json数据的交互所需的jar包,参考文章:http://blog.csdn.net/eson_15/article/details/51742864

    SpringMVC接收多个对象的4种方法

    主要为大家详细介绍了SpringMVC接收多个对象的4种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    springmvc3+json参数传递后台接收json参数

    这是一个 spring mvc 框架 封装了 前台表单转成json数据 传递到后台 控制层 接收 json 数据,可以支持批量添加数据的功能。

    详解springmvc 接收json对象的两种方式

    本篇文章主要介绍了springmvc 接收json对象的两种方式,具有一定的参考价值,有需要的可以了解一下。

    浅谈springMVC接收前端json数据的总结

    下面小编就为大家分享一篇浅谈springMVC接收前端json数据的总结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    ajax向springmvc传递json

    ajax向springmvc传递json,

    在Spring MVC或Spring Boot中使用Filter打印请求参数问题

    使用Spring MVC或Spring Boot中打印或记录日志一般使用AOP记录Request请求和Response响应参数,在不使用AOP的前提下,如果在Filter中打印日志,在打印或消费请求类型为Content-Type:application/json的请求时,会...

    Spring MVC 关于controller的字符编码问题

    在使用springMVC框架构建web应用,客户端常会请求字符串、整型、json等格式的数据,通常使用@ResponseBody注解使 controller回应相应的数据而不是去渲染某个页面。

    spirngmvc js传递复杂json参数到controller的实例

    需要在Controller方法的集合参数里前添加@RequestBody,而@RequestBody默认接收的enctype (MIME编码)是application/json,因此发送POST请求时需要设置请求报文头信息,否则Spring MVC在解析集合请求参数时不会自动的...

    Spring攻略(第二版 中文高清版).part1

    14.1 用Spring Portlet MVC开发一个简单的Portlet 544 14.1.1 问题 544 14.1.2 解决方案 545 14.1.3 工作原理 546 14.2 将Portlet请求映射到处理程序 553 14.2.1 问题 553 14.2.2 解决方案 553 14.2.3...

    SpringMVC 传送JSON数据到客户端

    SpringMVC通过@ResponseBody传送json字符串到客户端,实现了REST接口远程调用功能,demo中使用的版本为spring3.2,代码中用到了注解,代码直接部署运行,已经通过测试(如在浏览器中输入...客户端返回后台传递的json格式数据)

    Spring攻略(第二版 中文高清版).part2

    14.1 用Spring Portlet MVC开发一个简单的Portlet 544 14.1.1 问题 544 14.1.2 解决方案 545 14.1.3 工作原理 546 14.2 将Portlet请求映射到处理程序 553 14.2.1 问题 553 14.2.2 解决方案 553 14.2.3...

    springboot参考指南

    关闭Spring MVC DispatcherServlet vii. 65.7. 关闭默认的MVC配置 Spring Boot参考指南 7 viii. 65.8. 自定义ViewResolvers v. 66. 日志 i. 66.1. 配置Logback ii. 66.2. 配置Log4j i. 66.2.1. 使用YAML或JSON配置...

    基于SSM框架+Mysql的企业CRM客户关系管理系统项目源码+数据库+项目说明.zip

    Spring+SpringMVC+MyBatis+Thymeleaf+Vue+JS+Jquery+Axios+Json 服务器: Tomcat_9.0.60 数据库: MySQL_8.0.28 开发工具:IDEA_2021.3.3 页面:Bootstrap_3.3.0 ## 2️⃣已实现的功能 **:star: 账号登录** ...

Global site tag (gtag.js) - Google Analytics