BaseEntity.java 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package com.rf.youth.base.model;
  2. import lombok.AllArgsConstructor;
  3. import lombok.Getter;
  4. import lombok.NoArgsConstructor;
  5. import lombok.Setter;
  6. import org.hibernate.annotations.GenericGenerator;
  7. import org.springframework.data.jpa.domain.support.AuditingEntityListener;
  8. import javax.persistence.*;
  9. import javax.validation.constraints.NotNull;
  10. import java.io.Serializable;
  11. /**
  12. * @author zzf
  13. * @description:
  14. * @date 2021/1/18 19:13
  15. */
  16. @Getter
  17. @Setter
  18. @NoArgsConstructor
  19. @AllArgsConstructor
  20. @EntityListeners({AuditingEntityListener.class})
  21. @MappedSuperclass
  22. public class BaseEntity implements Serializable {
  23. @Getter
  24. @Id
  25. @GenericGenerator(name = "jpa-uuid", strategy = "uuid")
  26. @GeneratedValue(generator = "jpa-uuid")
  27. @Column(name = "id", columnDefinition = "varchar(36) COMMENT '数据ID'")
  28. @NotNull(groups = Update.class)
  29. private String id;
  30. @Column(name = "create_time", columnDefinition = "varchar(36) COMMENT '创建时间'")
  31. private String createTime;
  32. @Column(name = "update_time", columnDefinition = "varchar(36) COMMENT '更新时间'")
  33. private String updateTime;
  34. public @interface Update {
  35. }
  36. }