如何使用MyBatis注释在单个查询中插入多个值?

时间:2012-02-01 20:29:48

标签: java mysql orm annotations mybatis

是否有使用MyBatis注释而不是XML使用单个查询将集合插入数据库(MySQL)的示例?

我在MyBatis DAO中有以下查询。

  @Insert("insert into deleted_items(item_id) " + "values (#{itemID})")
 int put(String itemID);

我想使用与上面相同的查询插入List<String>,只允许多个值。

如何仅使用注释来做到这一点?

2 个答案:

答案 0 :(得分:1)

AFAIK,使用注释是不可能的。不确定xml。

答案 1 :(得分:0)

是的,您可以使用MyBatis批注在数据库中插入集合 这是示例

我有一个用户列表,想要使用不带xml映射的MyBatis注释在数据库中插入该列表

 @Insert({"<script>", 
        "insert into  user_master (first_name,last_name) values ",
        "<foreach collection='userList' item='user' index='index' open='(' separator = '),(' close=')' >#{user.first_name},#{user.last_name}</foreach>",
        "</script>"})
    int insertUserList(@Param("userList") List<UserNew> userList);

我使用上面的insertUserList在我的休息调用中成功插入了超过25条记录。

我希望它对你有所帮助。

相关问题