Controller
/**
* @ClassName: UserController
* @Description:
* @Author: xuezhouyi
* @Version: V1.0
**/
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserDOMapper userDOMapper;
@PostMapping("/insertBatch")
public void insertBatch(@RequestBody List<UserDO> userDOS){
userDOMapper.insertBatch(userDOS);
}
}
Dao
/**
* @ClassName: UserDOMapper
* @Description:
* @Author: xuezhouyi
* @Version: V1.0
**/
public interface UserDOMapper {
void insertBatch(List<UserDO> userDOS);
}
XML
<insert id="insertBatch" useGeneratedKeys="true" keyProperty="id"
parameterType="com.springcloud.dataobject.ds1.UserDO">
INSERT INTO user(id, name, tel) VALUES
<foreach collection="list" item="user" index="index" separator=",">
(#{user.id,jdbcType=BIGINT}, #{user.name,jdbcType=VARCHAR}, #{user.tel,jdbcType=VARCHAR})
</foreach>
</insert>
DataObject
/**
* @ClassName: UserDO
* @Description:
* @Author: xuezhouyi
* @Version: V1.0
**/
@Data
public class UserDO {
private Integer id;
private String name;
private String tel;
}
测试
2019-11-18 13:40:39.056 DEBUG 9932 --- [nio-9090-exec-3] c.i.s.dao.ds1.UserDOMapper.insertBatch : ==> Preparing: INSERT INTO user(id, name, tel) VALUES (?, ?, ?) , (?, ?, ?) , (?, ?, ?)
2019-11-18 13:40:39.075 DEBUG 9932 --- [nio-9090-exec-3] c.i.s.dao.ds1.UserDOMapper.insertBatch : ==> Parameters: 91(Integer), xavier(String), 111(String), 92(Integer), xavier(String), 111(String), 93(Integer), xavier(String), 111(String)
2019-11-18 13:40:39.083 DEBUG 9932 --- [nio-9090-exec-3] c.i.s.dao.ds1.UserDOMapper.insertBatch : <== Updates: 3