zoukankan      html  css  js  c++  java
  • @PrePersist 注解

    用于为相应的生命周期事件指定回调方法。 该注释可以应用于实体类,映射超类或回调监听器类的方法。可以方便的自动填入实体类创建时间、更新时间。

    @Data
    @ToString
    @MappedSuperclass
    @EqualsAndHashCode
    public class BaseEntity {
    
        /**
         * Create time.
         */
        @Column(name = "create_time")
        @Temporal(TemporalType.TIMESTAMP)
        private Date createTime;
    
        /**
         * Update time.
         */
        @Column(name = "update_time")
        @Temporal(TemporalType.TIMESTAMP)
        private Date updateTime;
    
        @PrePersist
        protected void prePersist() {
            Date now = DateUtils.now();
            if (createTime == null) {
                createTime = now;
            }
    
            if (updateTime == null) {
                updateTime = now;
            }
        }
    
        @PreUpdate
        protected void preUpdate() {
            updateTime = new Date();
        }
    
        @PreRemove
        protected void preRemove() {
            updateTime = new Date();
        }
    
    }
    

    注意,@PrePersist 是 JPA 规范中提供的,老版本 Hibernate SessionFactory (5.1.0.Final)并不能使用。但是新版本的 HIbernate(大于等于 5.2.17) 是可以使用的。

    https://www.codenong.com/5640778/
    https://vladmihalcea.com/prepersist-preupdate-embeddable-jpa-hibernate/

  • 相关阅读:
    B站使用总结
    安装国外浏览器的好处
    查看网页源代码
    如何下载bilibili上面的视频
    11.27
    11.26
    11.25
    11.24获取时间
    11.23
    11.21
  • 原文地址:https://www.cnblogs.com/manastudent/p/14277057.html
Copyright © 2011-2022 走看看