美文网首页
8 - 动态SQL--set

8 - 动态SQL--set

作者: 农民工__乔Young | 来源:发表于2019-05-14 20:53 被阅读0次

set if
dao

int updateStudent(Student student);

mapper

 <update id="updateStudent" parameterType="student">
        update `student`
        <set>
            <if test="name != null">
                `name` = #{name},
            </if>
            <if test="age != null">
                `age` = #{age},
            </if>
            <if test="gender != null">
                `gender` = #{gender,typeHandler=genderTypeHandler}
            </if>
        </set>
        where `id` = #{id}
    </update>

test


    @Test
    public void test() {
        SqlSession session = factory.openSession();
        try {
            StudentMapper studentMapper = session.getMapper(StudentMapper.class);
            int id = 10001;
            String name = "hu";
            int age = 18;
            GenderEnum gender = GenderEnum.getGender(1);
            Student student = new Student(id,name,age,gender);
            int affectedRows = studentMapper.updateStudent(student);
            System.out.println(affectedRows);
            System.out.println(studentMapper.selectStudentById(id));
        } finally {
            session.commit();
            session.close();
        }
    }

相关文章

网友评论

      本文标题:8 - 动态SQL--set

      本文链接:https://www.haomeiwen.com/subject/oyxyaqtx.html