MyBatis-Plus 自动填充策略规则

49 阅读1分钟

如果对象里存在值 plus 就不会自动填充

如果数据库里有值 plus 则不自动填充

如果对象里有值 plus 更新值

如果对象里设置null 数据库有值 不会把数据库的值给更新成null

如果需要更新null 值 需要配置

如果需要前端传过来的时候 制成 null

可以直接使用注解解决

如果不需要前端 制null

有的时候需要程序 制null

建议使用 update() 方法 针对某些字段 更新值

insertStrategy		FieldStrategy.DEFAULT	
举例:NOT_NULL
insert into table_a(<if test="columnProperty != null">column</if>) values (<if test="columnProperty != null">#{columnProperty}</if>)

updateStrategy	   FieldStrategy.DEFAULT	
举例:IGNORED
update table_a set column=#{columnProperty}
whereStrategy	FieldStrategy.DEFAULT	
举例:NOT_EMPTY
where <if test="columnProperty != null and columnProperty!=''">column=#{columnProperty}</if>
FieldStrategy 值
值	         描述
IGNORED	    忽略判断
NOT_NULL	非 NULL 判断
NOT_EMPTY	非空判断(只对字符串类型字段,其他类型字段依然为非 NULL 判断)
DEFAULT	    追随全局配置
NEVER	    不加入SQL

1.png

2.png

3.png

4.png

5.png