前后端如何使用mybatis-plus批量插入
时间: 2024-03-16 10:36:19 浏览: 88
Mybatis-Plus提供了批量插入的方法,我们可以使用它来实现前后端的批量插入。
后端代码:
1.在实体类中添加@TableField注解,用于标识不是数据库表中的字段,但是需要插入的字段。
```
@Data
public class User {
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@TableField(value = "name")
private String name;
@TableField(value = "age")
private Integer age;
}
```
2.在Mapper接口中添加批量插入方法。
```
public interface UserMapper extends BaseMapper<User> {
void insertBatch(@Param("list") List<User> list);
}
```
3.在ServiceImpl中实现批量插入方法。
```
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
@Override
public void insertBatch(List<User> list) {
baseMapper.insertBatch(list);
}
}
```
前端代码:
1.在前端页面中创建一个表单,用于输入需要批量插入的数据。
```
<form id="form">
<input type="text" name="name" placeholder="姓名">
<input type="text" name="age" placeholder="年龄">
<button type="button" onclick="insertBatch()">批量插入</button>
</form>
```
2.在前端js代码中,使用ajax向后端发送批量插入请求。
```
function insertBatch() {
var list = [];
$("#form input").each(function () {
var name = $(this).attr("name");
var value = $(this).val();
var obj = {};
obj[name] = value;
list.push(obj);
});
$.ajax({
url: "/user/insertBatch",
type: "post",
contentType: "application/json;charset=utf-8",
data: JSON.stringify(list),
success: function (res) {
if (res.code === 200) {
alert("批量插入成功");
} else {
alert("批量插入失败");
}
}
});
}
```
阅读全文