Quando precisar preencher automaticamente os atributos públicos em algumas classes de entidade do projeto , você pode usar a função de preenchimento automático no Mybatis-plus.
(1) Podemos adicionar a anotação especificada @TableField aos atributos da classe para serem preenchidos automaticamente na classe da entidade (preencher a estratégia de preenchimento do tipo de enumeração ao preencher o método acima)
-
FieldFill.DEFAULT
:Estratégia de preenchimento padrão, nenhum processamento é feito. -
FieldFill.INSERT
: os campos são preenchidos automaticamente somente durante operações de inserção. -
FieldFill.UPDATE
:Os campos são preenchidos automaticamente apenas em operações de atualização. -
FieldFill.INSERT_UPDATE
: os campos são preenchidos automaticamente durante as operações de inserção e atualização. -
(2) Escreva a classe de configuração usada para preencher
-
@Component public class metaObjectHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { this.setFieldValByName("createTime",new Date(),metaObject); this.setFieldValByName("createBy","1",metaObject); this.setFieldValByName("updateTime",new Date(),metaObject); this.setFieldValByName("updateBy","1",metaObject); } } @Override public void updateFill(MetaObject metaObject) { this.setFieldValByName("updateTime", new Date(), metaObject); this.setFieldValByName("updateBy", "1", metaObject); } }
Perceber:
(1) Implemente o método de reescrita da interface MetaObjectHandler (basta seguir as instruções da ideia)
(2) Certifique-se de carregá-lo no contêiner principal do ioc (não se esqueça da anotação @Component)