当前使用版本(必填,否则不予处理)

3.4.1

该问题是如何引起的?(确定最新版也有问题再提!!!)

针对基础数据类型的自动填充失败

重现步骤(如果有就写完整)

针对一个基础数据类型,比如createTime,设置自动填充

   @TableField(fill = FieldFill.INSERT)
   private long createTime;

检查填充策略,可以看到注释描述为基础类型也支持填充,等同于IGNORE MyBatis-Plus 3.4.1版本自动填充的疑问

目前其他方法已经被设置@Deprecated 推荐的只有 strictInsertFill 但是default方法中只会判断方法是否为null

default MetaObjectHandler strictFillStrategy(MetaObject metaObject, String fieldName, Supplier<?> fieldVal) {
        if (metaObject.getValue(fieldName) == null) {
            Object obj = fieldVal.get();
            if (Objects.nonNull(obj)) {
                metaObject.setValue(fieldName, obj);
            }
        }
        return this;
    }

是否针对基础数据类型,必须调用 setFieldValByName()方法? 还是在实现strictFillStrategy()方法过程中的遗漏,建议使用哪个?

报错信息

Comment From: miemieYaho

基本数据类型有默认值,不建议使用也不会单独进行处理