app开发者平台在数字化时代的重要性与发展趋势解析
654
2023-06-29
Mybatis批量插入数据返回主键的实现
响应效果(id为主键):
{
"data": [
{"studentName": "张三","classNo": "一班","id": 111},
{"studentName": "李四","classNo": "二班","id": 112},
{"studentName": "王五","classNo": "一班","id": 113}
]
}
控制层:
@PostMapping("/test")
@ResponseBody
public Map
Map
//非空校验
if (!checkParams.checkString(data)) {
reshttp://ultMap.put("code", "1");
resultMap.put("msg", "参数为空。");
return resultMap;
}
//json转List
JSONObject json= new JSONObject(data);
String dataString = json.get("data").toString();
com.google.gson.Gson gson = new Gson();
List
}.getType());
//请求接口
resultMap=registerService.test(list);
return resultMap;
}
接口:
public Map
实现类:
@Override
public Map
Map
registerMapper.test( data);
resultMap.put("data",data);
return resultMap;
}
持久层:
public void test(List
statement:
INSERT INTO student_info(student_name,class_no)VALUES
(
#{item.studentName},
#{item.classNo}
)
请求方式:
http://localhost/xxx/test
请求参数:
{
"data": [
{"studentName": "张三","classNo": "一班"},
{"studentName": "李四","classNo": "二班"},
{"studentName": "王五","classNo": "一班"}
]
}
注意事项:
statement中keyProperty的赋值是可以自定义的,如果将keyProperty的值改为key,即改成如下:
INSERT INTO student_info(student_name,class_no)VALUES
(
#{item.studentName},
#{item.classNo}
)
则响应效果(key为主键)如下:
{
"data": [
{"studentName": "张三","classNo": "一班","key": 111},
{"studentName": "李四","classNo": "二班","key": 112},
zUkNtcfSJ {"studentName": "王五","classNo": "一班","key": 113}
]
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~