在 MyBatis 中,你可以使用 标签来处理复杂类型的集合。
以下是一个使用
- 首先,定义一个实体类,例如 User:
public class User {
private int id;
private String name;
private int age;
// 省略 getter 和 setter 方法
}
- 在你的 Mapper XML 文件中,使用
` 标签遍历一个 User 列表:
INSERT INTO users (id, name, age)
VALUES
<foreach collection="list" item="user" separator=",">
(#{user.id}, #{user.name}, #{user.age})
</foreach>
</insert>
在这个示例中,collection
属性指定要遍历的集合名称(在这里是 “list”),item
属性指定当前元素的变量名(在这里是 “user”),separator
属性指定每个元素之间的分隔符(在这里是逗号)。
- 在你的 Mapper 接口中,添加一个方法与上面的
` 标签对应:
public interface UserMapper {
void insertUsers(List<User> users);
}
现在,你可以在你的服务类中调用 insertUsers
方法来批量插入 User 对象到数据库中。
注意:在使用标签时,请确保你的 SQL 语句是安全的,以防止 SQL 注入攻击。在这个示例中,我们使用了 MyBatis 的参数绑定(如
#{user.id}`),这样可以避免 SQL 注入的风险。