栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Mybatis-plus实现时间自动填充(代码直接可用)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Mybatis-plus实现时间自动填充(代码直接可用)

一. 搭建基础项目

  引入依赖


        
            org.springframework.boot
            spring-boot-starter-web
        
        
        
            org.projectlombok
            lombok
            true
        
        
        
            io.springfox
            springfox-swagger2
            2.7.0
        
        
        
            com.github.xiaoymin
            swagger-bootstrap-ui
            1.9.6
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.3.1.tmp
        
        
            mysql
            mysql-connector-java
            8.0.26
        
    

  controller

@RestController
public class TestController {

    @Autowired
    private IProjectService projectService;

    @ApiOperation("新增项目")
    @PostMapping("/")
    public void addProjectWrite(@RequestBody Project project) {
        projectService.save(project);
    }
}

  service

public interface IProjectService extends IService {

}

 serviceImpl

@Service
public class ProjectServiceImpl extends ServiceImpl implements IProjectService {

}

Mapper

@Service
public class ProjectServiceImpl extends ServiceImpl implements IProjectService {

}

Pojo

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("ts_project")
@ApiModel(value="Project对象", description="撰写项目申请书的基本内容")
public class Project implements Serializable {

    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    private Integer workNumber;
    private Integer adminId;
    private String name;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "Asia/Shanghai")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date gmtCreate;

    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "Asia/Shanghai")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date gmtModified;

}

  application.yml 

server:
  # 端口
  port: 8081

spring:
  # 数据源配置
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test2?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
    username: root
    password: root


# Mybatis-plus配置
mybatis-plus:
  #配置Mapper映射文件
  mapper-locations: classpath*:/mapper
@Component
public class MymetaObjectHandler implements metaObjectHandler {
    @Override
    public void insertFill(metaObject metaObject) {
        this.setFieldValByName("gmtCreate",  new Date(), metaObject);
        this.setFieldValByName("gmtModified", new Date(), metaObject);
    }

    @Override
    public void updateFill(metaObject metaObject) {
        this.setFieldValByName("gmtModified", new Date(), metaObject);

    }
}

 修改pojo类

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("ts_project")
@ApiModel(value="Project对象", description="撰写项目申请书的基本内容")
public class Project implements Serializable {

    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    private Integer workNumber;
    private Integer adminId;
    private String name;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "Asia/Shanghai")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date gmtCreate;

    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "Asia/Shanghai")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date gmtModified;
}

在gmtCreate上增加   @TableField(fill = FieldFill.INSERT) 表示创建时间。

在gmtModified上增加 @TableField(fill = FieldFill.INSERT_UPDATE)表示修改时间。

gmtCreate和gmtModified需要与自定义方法中的字段相匹配。

此时执行操作,会在表中添加时间,如下:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/781649.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号