有时候需要在前台自定义对象,然后把对象封装在list中,在传送到后台,这样的思想也比较合理

1. 前台代码

	$scope.saveScore = function () {
$scope.userScoreList = new Array();//自定义数组
angular.forEach ($scope.records, function (record, index) { if (record.score != null) {
$scope.userScoreModel = {'userAnswerId': null,'score': null};//自定义对象结构
$scope.userScoreModel.userAnswerId = record.userAnswerId;//赋值
$scope.userScoreModel.score = record.score; $scope.userScoreList.push($scope.userScoreModel);//把对象封装在集合中
debugger;
}
}); if ($scope.userScoreList != null && $scope.userScoreList.length > 0) {
var fd = new FormData();// 使用angularJS的FormData封装要传送的数据
var userScoreRecords = angular.toJson($scope.userScoreList);//把对象(集合)转换为json串
fd.append('userScoreRecords', userScoreRecords);//参数放入formData中
debugger;//使用 debugger模式查看传值情况
$http.post('/reviewProcess/save', fd, { //使用post方法 传送formdata对象
transformRequest: angular.identity, //使用angular传参认证
headers: {
'Content-Type': undefined //设置请求头
}
})
.success(function (data){
toastr.success("success");
})
.error(function (data) {
toastr.success("failed");
});
}
};

  2. 后台接收

  @ResponseBody
@RequestMapping(value = "/reviewProcess/save", method = RequestMethod.POST)
public void saveUserScore (@RequestParam("userScoreRecords") String userScoreRecords) { //使用requestparam接收前台传送的json串
System.out.println(userScoreRecords);
ObjectMapper mapper = new ObjectMapper(); // 使用fastJson的ObjectMapper反序列化json串为对象
UserScoreModel record = null;
try {
JSONArray jsonArray = new JSONArray (userScoreRecords); //在后台把json串转换为json数组
for (int i =0; i < jsonArray.length(); i++) {
record = mapper.readValue(jsonArray.getJSONObject(i).toString(), UserScoreModel.class); //获取json数组的json对象并且反序列化为对应的对象
System.out.println(record); // 得到对象后后台即可操作
}
} catch (Exception e) {
logger.error(e.getMessage(), e);
}
}

  

angularJS前台传list数组,后台springMVC接收数组的更多相关文章

  1. ajax传数组到后台,后台springmvc接收数组参数

    var   ids= new Array();  $("input[class='detailCheck']:checked").each(function(i,k){   var ...

  2. springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例

    案例是给一个用户赋予多个权限,多个权限用其对应的主键 id 为参数,组成了 一个id数组,传给springMVC,然后springMVC传给mybatis,然后mybatis批量插入.其实类似的场景还 ...

  3. Springmvc接收数组参数

    Springmvc接收数组参数,必须添加@RequestParam注解 注解格式@RequestParam(value="前端参数名[]") 示例: controller端的代码 ...

  4. AJax提交表单数据到后台springmvc接收

    第一种方法直接用serialize()方法 function insert(){ $.ajax({ type:"POST", url:"${pageContext.req ...

  5. 前台传JSON到后台

    现在,有一个需求,我需要将表格中选中行的数据中的一部分传直接传到控制器中,然后保存到另外一张表中.一开始,我就想到在前台使用ajax构造json数据,然后控制器直接通过list接收. 选中界面中的行, ...

  6. springmvc接收数组类型参数

    直接在方法上使用List<Bean>报不能实例化错误! 必须将List<Bean>放在某个对象里作为属性方可接收.具体见如下例子 前端代码 <!DOCTYPE html& ...

  7. springmvc接收数组方式总结

    1.接受正常的数组 如param1=aaa&param1=bbb&param1=3 对于这种,在实体参数中,使用String param1[] 这种参数既可以获取数组的值 2.接受数组 ...

  8. 前端AJAX传递数组给Springmvc接收处理

    前端传递数组后端(Spring)来接收并处理: <!DOCTYPE html> <html> <head> <meta charset="UTF-8 ...

  9. vue element多文件多格式上传文件,后台springmvc完整代码

       template:        <el-upload               class="upload-demo"               ref=&quo ...

随机推荐

  1. JVM笔记3-java内存区域之运行时常量池

    1.运行时常量池属于线程共享区中的方法区. 2.运行时常量池用于编译期生成的各种自变量,符号引用,这部分内用将在类加载后接入方法区的运行时常量池中存放. 看如下代码所示,如图: public clas ...

  2. ActiveMq笔记1-消息可靠性理论

    原博客:http://shift-alt-ctrl.iteye.com/blog/2020182 https://mp.weixin.qq.com/s/h74d6LtGB5M8VF0oLrXdCA 我 ...

  3. 自己编写的仿京东移动端的省市联动选择JQuery插件

    概述 什么是插件,插件就是即插即用叫插件,很少的配置,很少的代码就可以用都项目里,之所以做这个插件,是因为做了一个省市区的联动,其他项目如果要用怎么办,难道在ctrl+c,ctrl+v?那样做太low ...

  4. 【java学习笔记】文件读写(IO流)

    1.字节流 FileInputStream.FileOutputStream ①FileInputStream import java.io.FileInputStream; public class ...

  5. 嵌入式Linux引导过程之1.4——Xloader的ddr_init

    这里我们来看XLOADER_ENTRY中调用的第二个标号ddr_init处的代码,这部分代码的作用是对外部内存SDRAM进行初始化,在我 spearplus开发板中,使用的是DDR SDRAM.在调用 ...

  6. armlinux下的网路传输(tcp/ip)

    /*ex2serv.c*/ #include <time.h> #include<stddef.h> #include <stdio.h> #include < ...

  7. NLP︱句子级、词语级以及句子-词语之间相似性(相关名称:文档特征、词特征、词权重)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 关于相似性以及文档特征.词特征有太多种说法.弄 ...

  8. (五)java运算

    java在运算的时候,会存在数据类型的转换,其中一种是自动类型转换,也称为隐式类型转换,这种转换需要满足一定的条件:     1.这两种类型是兼容的,例如同时都是整数类型或者都是数字类型     2. ...

  9. Codeforces Round #424 Div2 E. Cards Sorting

    我只能说真的看不懂题解的做法 我的做法就是线段树维护,毕竟每个数的顺序不变嘛 那么单点维护 区间剩余卡片和最小值 每次知道最小值之后,怎么知道需要修改的位置呢 直接从每种数维护的set找到现在需要修改 ...

  10. iOS - Quartz 2D 二维绘图

    1.Quartz 2D 简介 Quartz 2D 属于 Core Graphics(所以大多数相关方法的都是以 CG 开头),是 iOS/Mac OSX 提供的在内核之上的强大的 2D 绘图引擎,并且 ...