Spring/게시판API서버
[Spring] 게시판 API (4) 생성일, 수정일 추가
wans10
2023. 3. 7. 17:04
게시글을 작성하고 저장하는 시점의 시간을 추가해 게시글이 언제 씌여졌는지 알 수 있게 해보려 한다.
일단 코드 먼저보자
전체 코드
@EntityListeners(AuditingEntityListener.class)
@MappedSuperclass
@Getter
public class TimeEntity {
@CreatedDate
@Column(updatable = false)
private LocalDateTime createdDate;
@LastModifiedDate
private LocalDateTime lastModifiedDate;
}
이 클래스를 게시글 클래스에 상속하여 사용하기만 하면 끝이다!
@EntityListeners는 엔티티의 변화를 감지하고 테이블의 데이터를 조작하는 일을 한다.
@MappedSuperclass는 객체의 입장에서 공통 매핑 정보가 필요할 때 사용한다.
결과를 보자
원하는대로 잘 들어가긴 했는데 뭔가 맘에 안든다. 저 뒤에 소수점자리는 자르고 싶다.
코드를 변경해 보자.
public class TimeEntity {
@CreatedDate
@Column(updatable = false)
private String createdDate;
@LastModifiedDate
private String lastModifiedDate;
/**
* @PrePersist : 엔티티 insert 이전 실행
* @PreUpdate : 엔티티 update 이전 실행
*/
@PrePersist
public void onPrePersist(){
this.createdDate = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"));
this.lastModifiedDate = this.createdDate;
}
@PreUpdate
public void onPreUpdate(){
this.lastModifiedDate = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"));
}
}
위와 같이 변경하면 본인이 원하는 시간 포맷으로 변경이 가능하다.
요청을 보내 결과를 확인해보자.