写代码,作笔记是个好习惯:

<update id="update" parameterType="FaultMainten">
        update FAULT_MAINTEN
        <set>
            <if test="pid !=null and pid !=''">
                PID=#{pid,jdbcType=VARCHAR},
            </if>
            <if test="pname !=null and pname !=''">
                PNAME=#{pname,jdbcType=VARCHAR},
            </if>
                </set>
            ......

每句<if>中的语句尾部都有一个逗号,<set>在进行生成语句时进行判断,当是满足条件的语句生成后,

如果最后一个为逗号,将逗号忽略。

PNAME=#{pname,jdbcType=VARCHAR},其中jdbcType属性指定类型,

如果不指定,很多情况会不识别,报错,比如传null(此处定义了!=null,但其它谁知道会有什么情况呢,还是加上好)。

可是又有个问题,一般取整形用#{},可是此处是字符,为什么不用${}呢?

公司小员工,因涉及修改内容,心里有点尴尬,等以后再测试看看,感觉应该是可以的(感觉更好)。

04-24 23:39