BaseIdentityEntity.java 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package com.yihu.jw.entity;
  2. import com.fasterxml.jackson.annotation.JsonFormat;
  3. import javax.persistence.*;
  4. import java.io.Serializable;
  5. import java.util.Date;
  6. /**
  7. * Entity - 基类(自动递增)
  8. */
  9. @MappedSuperclass
  10. @EntityListeners(IdentityEntityListener.class)
  11. public abstract class BaseIdentityEntity implements Serializable {
  12. private static final long serialVersionUID = -67188388306700736L;
  13. /** 创建日期 */
  14. private Date createTime;
  15. /**
  16. * 最后修改时间
  17. */
  18. private Date lastUpdateTime;
  19. // 非业务主键
  20. protected Long id;
  21. @Id
  22. @GeneratedValue(strategy = GenerationType.IDENTITY)
  23. @Column(name = "id", unique = true, nullable = false)
  24. public Long getId() {
  25. return id;
  26. }
  27. public void setId(Long id) {
  28. this.id = id;
  29. }
  30. @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  31. @Column(name = "create_time", nullable = false, updatable = false)
  32. public Date getCreateTime() {
  33. return createTime;
  34. }
  35. public void setCreateTime(Date createTime) {
  36. this.createTime = createTime;
  37. }
  38. @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  39. @Column(name = "last_update_time", nullable = false)
  40. public Date getLastUpdateTime() {
  41. return lastUpdateTime;
  42. }
  43. public void setLastUpdateTime(Date lastUpdateTime) {
  44. this.lastUpdateTime = lastUpdateTime;
  45. }
  46. @Override
  47. public boolean equals(Object obj) {
  48. if (obj == null) {
  49. return false;
  50. }
  51. if (this == obj) {
  52. return true;
  53. }
  54. if (!BaseIdentityEntity.class.isAssignableFrom(obj.getClass())) {
  55. return false;
  56. }
  57. BaseIdentityEntity other = (BaseIdentityEntity) obj;
  58. return getId() != null ? getId().equals(other.getId()) : false;
  59. }
  60. @Override
  61. public int hashCode() {
  62. int hashCode = 17;
  63. hashCode += null == getId() ? 0 : getId().hashCode() * 31;
  64. return hashCode;
  65. }
  66. }