废话不多说了,直接步入正题了。
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
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我