网站建设流量从哪里来seo词库排行
网站建设流量从哪里来,seo词库排行,建筑设计单位,网站制作 网站建设1. 公共字段自动填充的作用
当我们开发一个项目时#xff0c;我们可能会对几个字段重复的进行填写#xff1b;例如#xff1a;当我们在修改一个用户时#xff0c;或者添加一个用户时#xff0c;我们都需要将它的修改人、修改时间给赋值#xff0c;如果我们每次就进行手动…1. 公共字段自动填充的作用
当我们开发一个项目时我们可能会对几个字段重复的进行填写例如当我们在修改一个用户时或者添加一个用户时我们都需要将它的修改人、修改时间给赋值如果我们每次就进行手动写入代码就会产生冗余因此 MyBatis-Plus 为我们提供了公共字段自动填充。
2. 如何使用
2.1 添加注解
这个注解是添加在实体类上的注解是TableField我们可以使用它里面的属性值fill进行指定什么操作需要填充它一个有四个值DEFAULT,INSERT UPDATE,INSERT_UPDATE这几个值分别表示默认值、插入、更新、插入及更新如下
package com.itheima.entity;import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;/*** 员工实体类**/
Data
public class Employee implements Serializable {private static final long serialVersionUID 1L;private Long id;private String username;private String name;private String password;private String phone;private String sex;// 身份证private String idNumber;private Integer status;TableField(fill FieldFill.INSERT)private LocalDateTime createTime;TableField(fill FieldFill.INSERT_UPDATE)private LocalDateTime updateTime;TableField(fill FieldFill.INSERT)private Long createUser;TableField(fill FieldFill.INSERT_UPDATE)private Long updateUser;}2.2 实现 MetaObjectHandler 接口
这个接口是 mybatisplus包下接口我们主要是重写 updateFill 与 insertFill 这两个方法这里有一个重要的概念我们需要直到我们这里会使用到 ThreadLocal它主要用于线程间的数据隔离这里就不再普及有兴趣的可以自己搜一下了解。
当我们实现完这个就看后在我们对注解标识的实体类时他会先进入这个实现接口类对应的方法后再向数据库发送消息。
/*** 公共字段自动填充**/
Slf4j
Component
public class MyMetaObjectHandle implements MetaObjectHandler {Overridepublic void insertFill(MetaObject metaObject) {log.info(公共字段字段修改 [insert]);log.info(metaObject.toString());metaObject.setValue(createTime, LocalDateTime.now());metaObject.setValue(updateTime, LocalDateTime.now());metaObject.setValue(createUser, BaseContext.getId());metaObject.setValue(updateUser, BaseContext.getId());}Overridepublic void updateFill(MetaObject metaObject) {log.info(公共字段字段修改 [update]);log.info(metaObject.toString());long id1 Thread.currentThread().getId();log.info(公共字段字段修改 id{},id1);metaObject.setValue(updateTime, LocalDateTime.now ());metaObject.setValue(updateUser, BaseContext.getId());}
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89878.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!