1、set标签特点:
- set标签用于更新语句中
- set标签解析为set关键字
- set可以去除跟新语句中无用的逗号
- 通常是和if标签一起使用
2、set标签的使用
- 编写接口方法
int update(Student student);
- 编写sql语句
<!--修改-->
<update id="update">
update student
<set>
<if test="name!=null and name!=''">
name=#{name},
</if>
<if test="age!=null and age!=''">
age=#{age},
</if>
<if test="address!=null and age!=''">
address=#{address}
</if>
</set>
where id=#{id}
</update>
- 测试
@Test
public void xg() throws Exception{
Reader reader= Resources.getResourceAsReader("mybatis.xml");
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);
SqlSession sqlSession = factory.openSession();
Student student = new Student(32,"",17,"最美女人");
int row = sqlSession.update("com.lrb.Dao.StudentDao.update",student);
System.out.println(row);
sqlSession.commit();//必须提交
sqlSession.close();
}
- 注意
当set标签中有条件成立时就会附加set关键字,字段为null时该列不会被更新。set可以忽略与sql无关的逗号。