myBatis批量添加,修改和删除

阅读更多

1、批量添加元素session.insert(String string,Object o)

复制代码
public void batchInsertStudent(){
    List ls = new ArrayList();
    for(int i = 5;i < 8;i++){
        Student student = new Student();
        student.setId(i);
        student.setName("maoyuanjun" + i);
        student.setSex("man" + i);
        student.setTel("tel" + i);
        student.setAddress("浙江省" + i);
        ls.add(student);
    }
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.insert("mybatisdemo.domain.Student.batchInsertStudent", ls);
    session.commit();
    session.close();
}


    INSERT INTO STUDENT (id,name,sex,tel,address)
    VALUES 
    
        (#{item.id},#{item.name},#{item.sex},#{item.tel},#{item.address})
    
复制代码

 

2、批量修改session. insert (String string,Object o)

复制代码
实例1:
public void batchUpdateStudent(){
    List ls = new ArrayList();
    for(int i = 2;i < 8;i++){
        ls.add(i);
    }
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.insert("mybatisdemo.domain.Student.batchUpdateStudent",ls);
    session.commit();
    session.close();
}

    UPDATE STUDENT SET name = "5566" WHERE id IN
    
        #{item}
    


实例2:
public void batchUpdateStudentWithMap(){
    List ls = new ArrayList();
    for(int i = 2;i < 8;i++){
        ls.add(i);
    }
    Map map = new HashMap();
    map.put("idList", ls);
    map.put("name", "mmao789");
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.insert("mybatisdemo.domain.Student.batchUpdateStudentWithMap",map);
    session.commit();
    session.close();
}

    UPDATE STUDENT SET name = #{name} WHERE id IN 
     
        #{item} 
    
复制代码

3、批量删除session.delete(String string,Object o)

复制代码
public void batchDeleteStudent(){
    List ls = new ArrayList();
    for(int i = 4;i < 8;i++){
        ls.add(i);
    }
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.delete("mybatisdemo.domain.Student.batchDeleteStudent",ls);
    session.commit();
    session.close();
}

    DELETE FROM STUDENT WHERE id IN
     
        #{item} 
    
复制代码
ref:http://www.cnblogs.com/wuyifu/p/3745258.html

你可能感兴趣的:(mybatis,批量添加,修改,删除)