insertSelective,insert的区别
如果选择insert 那么所有的字段都会添加一遍即使没有值
但是如果使用inserSelective就会只给有值的字段赋值(会对传进来的值做非空判断)
prefix:在trim标签内sql语句加上前缀。
suffix:在trim标签内sql语句加上后缀。
suffixOverrides:指定去除多余的后缀内容,如:suffixOverrides=",",去除trim标签内sql语句多余的后缀","。
prefixOverrides:指定去除多余的前缀内容
<insert id="insertSelective" parameterType="com.site.blog.my.core.entity.AdminUser">
insert into tb_admin_user
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="adminUserId != null">
admin_user_id,
</if>
<if test="loginUserName != null">
login_user_name,
</if>
<if test="loginPassword != null">
login_password,
</if>
<if test="nickName != null">
nick_name,
</if>
<if test="locked != null">
locked,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="adminUserId != null">
#{adminUserId,jdbcType=INTEGER},
</if>
<if test="loginUserName != null">
#{loginUserName,jdbcType=VARCHAR},
</if>
<if test="loginPassword != null">
#{loginPassword,jdbcType=VARCHAR},
</if>
<if test="nickName != null">
#{nickName,jdbcType=VARCHAR},
</if>
<if test="locked != null">
#{locked,jdbcType=TINYINT},
</if>
</trim>
</insert>