废话不多说了,直接步入正题了。
1、批量添加元素session.insert(String string,Object o)
public void batchInsertStudent(){ List<Student> ls = new ArrayList<Student>(); 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 id=\"batchInsertStudent\" parameterType=\"java.util.List\"> INSERT INTO STUDENT (id,name,sex,tel,address) VALUES <foreach collection=\"list\" item=\"item\" index=\"index\" separator=\",\" > (#{item.id},#{item.name},#{item.sex},#{item.tel},#{item.address}) </foreach> </insert>
2、批量修改session. insert (String string,Object o)
实例1:
public void batchUpdateStudent(){ List<Integer> ls = new ArrayList<Integer>(); 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 id=\"batchUpdateStudent\" parameterType=\"java.util.List\"> UPDATE STUDENT SET name = \"5566\" WHERE id IN <foreach collection=\"list\" item=\"item\" index=\"index\" open=\"(\" separator=\",\" close=\")\" > #{item} </foreach> </update>
实例2:
public void batchUpdateStudentWithMap(){ List<Integer> ls = new ArrayList<Integer>(); for(int i = 2;i < 8;i++){ ls.add(i); } Map<String,Object> map = new HashMap<String,Object>(); 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 id=\"batchUpdateStudentWithMap\" parameterType=\"java.util.Map\" > UPDATE STUDENT SET name = #{name} WHERE id IN <foreach collection=\"idList\" index=\"index\" item=\"item\" open=\"(\" separator=\",\" close=\")\"> #{item} </foreach> </update>
3、批量删除session.delete(String string,Object o)
public void batchDeleteStudent(){ List<Integer> ls = new ArrayList<Integer>(); 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 id=\"batchDeleteStudent\" parameterType=\"java.util.List\"> DELETE FROM STUDENT WHERE id IN <foreach collection=\"list\" index=\"index\" item=\"item\" open=\"(\" separator=\",\" close=\")\"> #{item} </foreach> </delete>
好了,本文到此结束,希望对大家有所帮助。
本文地址:https://www.stayed.cn/item/2371
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我