使用Mybatis怎么批量插入数据并返回主键
这篇文章将为大家详细讲解有关使用Mybatis怎么批量插入数据并返回主键,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
创新互联长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为乌拉特中企业提供专业的网站建设、做网站,乌拉特中网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。
响应效果(id为主键):
{ "data": [ {"studentName": "张三","classNo": "一班","id": 111}, {"studentName": "李四","classNo": "二班","id": 112}, {"studentName": "王五","classNo": "一班","id": 113} ] }
控制层:
@PostMapping("/test") @ResponseBody public Maptest(@RequestBody String data) { Map resultMap = new HashMap (); //非空校验 if (!checkParams.checkString(data)) { resultMap.put("code", "1"); resultMap.put("msg", "参数为空。"); return resultMap; } //json转List
接口:
public Maptest(List > data);
实现类:
@Override public Maptest(List > data) { Map resultMap = new HashMap (); registerMapper.test( data); resultMap.put("data",data); return resultMap; }
持久层:
public void test(List> 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}, {"studentName": "王五","classNo": "一班","key": 113} ] }
关于使用Mybatis怎么批量插入数据并返回主键就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
标题名称:使用Mybatis怎么批量插入数据并返回主键
文章网址:http://ybzwz.com/article/jdicog.html