接口 MetaObjectHandler
public interface MetaObjectHandler
元对象字段填充控制器抽象类,实现公共字段自动写入
所有入参的 MetaObject 必定是 entity 或其子类的 MetaObject
- 从以下版本开始:
- 2016-08-28
- 作者:
- hubin
-
方法概要
修饰符和类型方法说明default MetaObjectHandlerfillStrategy(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Object fieldVal) 填充策略,默认有值不覆盖,如果提供的值为null也不填充default TableInfofindTableInfo(org.apache.ibatis.reflection.MetaObject metaObject) find the tableInfo cache by metaObjectdefault ObjectgetFieldValByName(String fieldName, org.apache.ibatis.reflection.MetaObject metaObject) get value from java bean by propertyNamevoidinsertFill(org.apache.ibatis.reflection.MetaObject metaObject) 插入元对象字段填充(用于插入时对公共字段的填充)default boolean已过时。default booleanopenInsertFill(org.apache.ibatis.mapping.MappedStatement mappedStatement) 是否开启插入填充default boolean已过时。default booleanopenUpdateFill(org.apache.ibatis.mapping.MappedStatement mappedStatement) 是否开启了更新填充default MetaObjectHandlersetFieldValByName(String fieldName, Object fieldVal, org.apache.ibatis.reflection.MetaObject metaObject) 通用填充default MetaObjectHandlerstrictFill(boolean insertFill, TableInfo tableInfo, org.apache.ibatis.reflection.MetaObject metaObject, List<StrictFill<?, ?>> strictFills) 严格填充,只针对非主键的字段,只有该表注解了fill 并且 字段名和字段属性 能匹配到才会进行填充(null 值不填充)default MetaObjectHandlerstrictFillStrategy(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Supplier<?> fieldVal) 严格模式填充策略,默认有值不覆盖,如果提供的值为null也不填充default MetaObjectHandlerstrictInsertFill(TableInfo tableInfo, org.apache.ibatis.reflection.MetaObject metaObject, List<StrictFill<?, ?>> strictFills) default <T,E extends T>
MetaObjectHandlerstrictInsertFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Class<T> fieldType, E fieldVal) default <T,E extends T>
MetaObjectHandlerstrictInsertFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Supplier<E> fieldVal, Class<T> fieldType) default MetaObjectHandlerstrictUpdateFill(TableInfo tableInfo, org.apache.ibatis.reflection.MetaObject metaObject, List<StrictFill<?, ?>> strictFills) default <T,E extends T>
MetaObjectHandlerstrictUpdateFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Class<T> fieldType, E fieldVal) default <T,E extends T>
MetaObjectHandlerstrictUpdateFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Supplier<E> fieldVal, Class<T> fieldType) voidupdateFill(org.apache.ibatis.reflection.MetaObject metaObject) 更新元对象字段填充(用于更新时对公共字段的填充)
-
方法详细资料
-
openInsertFill
已过时。是否开启了插入填充 -
openInsertFill
default boolean openInsertFill(org.apache.ibatis.mapping.MappedStatement mappedStatement) 是否开启插入填充- 参数:
mappedStatement-MappedStatement- 返回:
- 是否开启
- 从以下版本开始:
- 3.5.6
-
openUpdateFill
已过时。是否开启了更新填充 -
openUpdateFill
default boolean openUpdateFill(org.apache.ibatis.mapping.MappedStatement mappedStatement) 是否开启了更新填充- 参数:
mappedStatement-MappedStatement- 返回:
- 是否开启
- 从以下版本开始:
- 3.5.6
-
insertFill
void insertFill(org.apache.ibatis.reflection.MetaObject metaObject) 插入元对象字段填充(用于插入时对公共字段的填充)- 参数:
metaObject- 元对象
-
updateFill
void updateFill(org.apache.ibatis.reflection.MetaObject metaObject) 更新元对象字段填充(用于更新时对公共字段的填充)- 参数:
metaObject- 元对象
-
setFieldValByName
default MetaObjectHandler setFieldValByName(String fieldName, Object fieldVal, org.apache.ibatis.reflection.MetaObject metaObject) 通用填充- 参数:
fieldName- java bean property namefieldVal- java bean property valuemetaObject- meta object parameter
-
getFieldValByName
default Object getFieldValByName(String fieldName, org.apache.ibatis.reflection.MetaObject metaObject) get value from java bean by propertyName- 参数:
fieldName- java bean property namemetaObject- parameter wrapper- 返回:
- 字段值
-
findTableInfo
find the tableInfo cache by metaObject 获取 TableInfo 缓存- 参数:
metaObject- meta object parameter- 返回:
- TableInfo
- 从以下版本开始:
- 3.3.0
-
strictInsertFill
default <T,E extends T> MetaObjectHandler strictInsertFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Class<T> fieldType, E fieldVal) - 参数:
metaObject- metaObject meta object parameter- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
strictInsertFill
default <T,E extends T> MetaObjectHandler strictInsertFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Supplier<E> fieldVal, Class<T> fieldType) - 参数:
metaObject- metaObject meta object parameter- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
strictInsertFill
default MetaObjectHandler strictInsertFill(TableInfo tableInfo, org.apache.ibatis.reflection.MetaObject metaObject, List<StrictFill<?, ?>> strictFills) - 参数:
metaObject- metaObject meta object parameter- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
strictUpdateFill
default <T,E extends T> MetaObjectHandler strictUpdateFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Supplier<E> fieldVal, Class<T> fieldType) - 参数:
metaObject- metaObject meta object parameter- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
strictUpdateFill
default <T,E extends T> MetaObjectHandler strictUpdateFill(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Class<T> fieldType, E fieldVal) - 参数:
metaObject- metaObject meta object parameter- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
strictUpdateFill
default MetaObjectHandler strictUpdateFill(TableInfo tableInfo, org.apache.ibatis.reflection.MetaObject metaObject, List<StrictFill<?, ?>> strictFills) - 参数:
metaObject- metaObject meta object parameter- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
strictFill
default MetaObjectHandler strictFill(boolean insertFill, TableInfo tableInfo, org.apache.ibatis.reflection.MetaObject metaObject, List<StrictFill<?, ?>> strictFills) 严格填充,只针对非主键的字段,只有该表注解了fill 并且 字段名和字段属性 能匹配到才会进行填充(null 值不填充)- 参数:
insertFill- 是否验证在 insert 时填充tableInfo- cache 缓存metaObject- metaObject meta object parameterstrictFills- 填充信息- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
fillStrategy
default MetaObjectHandler fillStrategy(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Object fieldVal) 填充策略,默认有值不覆盖,如果提供的值为null也不填充- 参数:
metaObject- metaObject meta object parameterfieldName- java bean property namefieldVal- java bean property value of Supplier- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
strictFillStrategy
default MetaObjectHandler strictFillStrategy(org.apache.ibatis.reflection.MetaObject metaObject, String fieldName, Supplier<?> fieldVal) 严格模式填充策略,默认有值不覆盖,如果提供的值为null也不填充- 参数:
metaObject- metaObject meta object parameterfieldName- java bean property namefieldVal- java bean property value of Supplier- 返回:
- this
- 从以下版本开始:
- 3.3.0
-
openInsertFill(MappedStatement)