ajax json list spring mvc接收

简介: ajax json list spring mvc接收

后台接收

/** 保存新增,@Valid标注spirng在绑定对象时自动为我们验证对象属性并存放errors在BindingResult  */
  @RequestMapping(method=RequestMethod.POST)
    @ResponseBody
  public  Map<String,Object> create( @RequestBody  List<UserSetting> data,BindingResult errors,HttpServletRequest request,HttpServletResponse response) throws Exception {
    int count = -2 ;
        if(data!=null&&RequestUtils.getCurrentUser()!=null)
            count = omUserNoticeSettingManager.save(data,RequestUtils.getCurrentUser().getUserId());
    //Flash.current().success(CREATED_SUCCESS); //存放在Flash中的数据,在下一次http请求中仍然可以读取数据,error()用于显示错误消息
        Map<String,Object> result = new HashMap<String, Object>();
        result.put("result","success");
        result.put("count",count);
        return result;
  }

前台

noticeSetting.sumbitform = function(btn){
    var itemArray = new Array();
    var  ispass = true;
    var errorIndex;
    $.each($("#settingtable tbody tr"), function(i, item){
        var selects = $(this).find("select");
        var deviceTypeS = $(selects.get(0)).data("kendoDropDownList");
        var deviceStatuS =$(selects.get(1)).data("kendoDropDownList");
        var branchareas = $(selects.get(2)).data("kendoMultiSelect");
        var item ={"deviceTypeId":parseInt(deviceTypeS.value()),
                    "deviceStatus":deviceStatuS==null?null:parseInt(deviceStatuS.value()),
                    "branchareas":branchareas==null?null:branchareas.value()};
        itemArray.push(item);
        if(deviceStatuS ==null||branchareas==null||branchareas.value().length==0){
            errorIndex=i+1;
            ispass = false;
            return false;
        }
    });
    if(!ispass){
        btn.removeAttr("disabled");
        $("#addtrbtn").removeAttr("disabled");
        $("#sumbitbutton").data("result","");
        noticeSetting.notify("第"+errorIndex+"行没选择完整","error");
        return false;
    }
    $.ajax({
        url: baseContext+"/omusernoticesetting.json",
        cache: false,
        dataType:"json",
        contentType:"application/json",
        type:"post",
        data:JSON.stringify(itemArray),
        success: function(data){
            $("#sumbitbutton").data("result","success");
            $("#sumbitbutton").data("count",data.count);
            var count = parseInt(data.count);
            if(count==0){
                noticeSetting.notify("重复设置不会添加","error");
            }else if(count>0){
                noticeSetting.notify("成功添加"+count+"条设置","success");
            }else{
                noticeSetting.notify("添加失败","error");
            }
            btn.removeAttr("disabled");
            $("#addtrbtn").removeAttr("disabled");
        },
        error:function(data){
            btn.removeAttr("disabled");
            $("#addtrbtn").removeAttr("disabled");
            $("#sumbitbutton").data("result","error");
            noticeSetting.notify("添加失败","error");
        }
    })
}
相关文章
|
8月前
|
JSON Java 数据格式
微服务——SpringBoot使用归纳——Spring Boot返回Json数据及数据封装——封装统一返回的数据结构
本文介绍了在Spring Boot中封装统一返回的数据结构的方法。通过定义一个泛型类`JsonResult&lt;T&gt;`,包含数据、状态码和提示信息三个属性,满足不同场景下的JSON返回需求。例如,无数据返回时可设置默认状态码&quot;0&quot;和消息&quot;操作成功!&quot;,有数据返回时也可自定义状态码和消息。同时,文章展示了如何在Controller中使用该结构,通过具体示例(如用户信息、列表和Map)说明其灵活性与便捷性。最后总结了Spring Boot中JSON数据返回的配置与实际项目中的应用技巧。
663 0
|
8月前
|
JSON Java fastjson
微服务——SpringBoot使用归纳——Spring Boot返回Json数据及数据封装——使用 fastJson 处理 null
本文介绍如何使用 fastJson 处理 null 值。与 Jackson 不同,fastJson 需要通过继承 `WebMvcConfigurationSupport` 类并覆盖 `configureMessageConverters` 方法来配置 null 值的处理方式。例如,可将 String 类型的 null 转为 &quot;&quot;,Number 类型的 null 转为 0,避免循环引用等。代码示例展示了具体实现步骤,包括引入相关依赖、设置序列化特性及解决中文乱码问题。
420 0
|
8月前
|
JSON Java fastjson
微服务——SpringBoot使用归纳——Spring Boot返回Json数据及数据封装——Spring Boot 默认对Json的处理
本文介绍了在Spring Boot中返回Json数据的方法及数据封装技巧。通过使用`@RestController`注解,可以轻松实现接口返回Json格式的数据,默认使用的Json解析框架是Jackson。文章详细讲解了如何处理不同数据类型(如类对象、List、Map)的Json转换,并提供了自定义配置以应对null值问题。此外,还对比了Jackson与阿里巴巴FastJson的特点,以及如何在项目中引入和配置FastJson,解决null值转换和中文乱码等问题。
1238 0
|
4月前
|
JSON Java 数据格式
Spring Boot返回Json数据及数据封装
在Spring Boot中,接口间及前后端的数据传输通常使用JSON格式。通过@RestController注解,可轻松实现Controller返回JSON数据。该注解是Spring Boot新增的组合注解,结合了@Controller和@ResponseBody的功能,默认将返回值转换为JSON格式。Spring Boot底层默认采用Jackson作为JSON解析框架,并通过spring-boot-starter-json依赖集成了相关库,包括jackson-databind、jackson-datatype-jdk8等常用模块,简化了开发者对依赖的手动管理。
505 3
|
9月前
|
消息中间件 Java Kafka
【Azure Kafka】使用Spring Cloud Stream Binder Kafka 发送并接收 Event Hub 消息及解决并发报错
reactor.core.publisher.Sinks$EmissionException: Spec. Rule 1.3 - onSubscribe, onNext, onError and onComplete signaled to a Subscriber MUST be signaled serially.
165 5
|
8月前
|
JSON Java 数据格式
微服务——SpringBoot使用归纳——Spring Boot中的全局异常处理——定义返回的统一 json 结构
本课主要讲解Spring Boot中的全局异常处理方法。在项目开发中,各层操作难免会遇到各种异常,若逐一处理将导致代码耦合度高、维护困难。因此,需将异常处理从业务逻辑中分离,实现统一管理与友好反馈。本文通过定义一个简化的JsonResult类(含状态码code和消息msg),结合全局异常拦截器,展示如何封装并返回标准化的JSON响应,从而提升代码质量和用户体验。
217 0
|
JSON 前端开发 Java
【Spring】“请求“ 之传递 JSON 数据
【Spring】“请求“ 之传递 JSON 数据
260 2
|
前端开发 Java 应用服务中间件
我以为我对Spring MVC很了解,直到我遇到了...
所有人都知道Spring MVC是是开发的,却鲜有人知道Spring MVC的理论基础来自于1978 年提出MVC模式的一个老头子,他就是Trygve Mikkjel Heyerdahl Reenskaug,挪威计算机科学家,名誉教授。Trygve Reenskaug的MVC架构思想早期用于图形用户界面(GUI) 的软件设计,他对MVC是这样解释的。MVC 被认为是解决用户控制大型复杂数据集问题的通用解决方案。最困难的部分是为不同的架构组件想出好的名字。模型-视图-编辑器是第一个。
250 1
我以为我对Spring MVC很了解,直到我遇到了...
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
499 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
JSON 前端开发 Java
Spring MVC返回JSON数据
综上所述,Spring MVC提供了灵活、强大的方式来支持返回JSON数据,从直接使用 `@ResponseBody`及 `@RestController`注解,到通过配置消息转换器和异常处理器,开发人员可以根据具体需求选择合适的实现方式。
446 4

热门文章

最新文章