java jvm

Spring-Data-Jpa AuditingEntityLi

2018-06-05  本文已影响847人  杨传池chris

https://blog.csdn.net/u010783936/article/details/793958989(原文)

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;  

import org.hibernate.validator.constraints.NotBlank;  

import org.springframework.data.annotation.CreatedDate;  

import org.springframework.data.annotation.LastModifiedDate;  

import org.springframework.data.jpa.domain.support.AuditingEntityListener;  

import javax.persistence.*;  

import java.util.Date;  

/**

 *

 */  

@Entity  

@Table(name = "notes")  

@EntityListeners(AuditingEntityListener.class)  

@JsonIgnoreProperties(value = {"createdAt", "updatedAt"},  

allowGetters =true)  

public class Note {  

@Id  

@GeneratedValue(strategy = GenerationType.AUTO)  

private Long id;  

@NotBlank  

private String title;  

@NotBlank  

private String content;  

@Column(nullable = false, updatable = false)  

@Temporal(TemporalType.TIMESTAMP)  

@CreatedDate  

private Date createdAt;  

@Column(nullable = false)  

@Temporal(TemporalType.TIMESTAMP)  

@LastModifiedDate  

private Date updatedAt;  

public Long getId() {  

return id;  

    }  

public void setId(Long id) {  

this.id = id;  

    }  

public String getTitle() {  

return title;  

    }  

public void setTitle(String title) {  

this.title = title;  

    }  

public String getContent() {  

return content;  

    }  

public void setContent(String content) {  

this.content = content;  

    }  

public Date getCreatedAt() {  

return createdAt;  

    }  

public void setCreatedAt(Date createdAt) {  

this.createdAt = createdAt;  

    }  

public Date getUpdatedAt() {  

return updatedAt;  

    }  

public void setUpdatedAt(Date updatedAt) {  

this.updatedAt = updatedAt;  

    }  

}  

如上示例代码,

[java] view plain copy

@EntityListeners(AuditingEntityListener.class) 是用于监听实体类添加或者删除操作的。  

[java] view plain copy

@JsonIgnoreProperties(value = {"createdAt", "updatedAt"},  

allowGetters =true)  这个注解是用于在除了在获取createAt,updateAt属性时进行操作,其他创建和更新操作都由jpa完成  

[java] view plain copy

@Column(nullable = false, updatable = false) 其中updatable = false表示不进行更新操作  

[java] view plain copy

@CreatedDate 表示该字为创建时间字段,在这个实体被insert时,设置值;@LastModifiedDate同理  

上一篇下一篇

猜你喜欢

热点阅读