Spring-Data-Jpa AuditingEntityListener @CreatedDate @LastModifiedDate 用法(转)

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同理  

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。