时刻记得:不忘初心,方得始终
功能
实现批量插入,并且返回自增id、随机id、uuid等。随你用什么策略。
话不多说,上实例
- bean
public class UserInfo
{
private int userId;
private String userName;
private StringuserPwd;
```(get、set方法)
}
- Dao
public interface UserDao{
int insertBatch(List<UserInfo> userList);
}
- mapper
<insert id="insertBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="userId">
insert into user_info
(
user_id,
user_name,
user_pwd
)
values
<foreach collection="list" item="item" index="index" separator=",">
(
null,
#{item.userName,jdbcType=VARCHAR},
#{item.userPwd,jdbcType=VARCHAR}
)
</foreach>
</insert>
- serviceImpl
public List<UserInfo> saveCheckin(List<UserInfo> userList) {
userDao.insertCheckin(userList); //成功后对象userList里面已经包含主键user_id
return userList;
}
注意
要将mybatis升到3.3.1以上
不要在Dao 层加@Param
注解,不然会被报如下错误
报错:Parameter '你的@Param参数' not found. Available parameters are [list]
网友评论