[ Spring ] Basic REST - 3. Board Entity

jwkwon0817·2023년 9월 2일
0

Backend

목록 보기
28/32
post-thumbnail
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedDate;

import java.time.LocalDateTime;

@Entity
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Getter
public class Board {
	
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
	
    private String title;
	
    private String content;
	
    @CreatedDate
    private LocalDateTime createdDate;
	
    @LastModifiedDate
    private LocalDateTime modifiedDate;
	
    public void update(String title, String content) {
        this.title = title;
        this.content = content;
        this.modifiedDate = LocalDateTime.now();
    }
}

어노테이션 종류

어노테이션기능
@GetterGetter를 자동으로 만들어준다.
@BuilderBuilder 패턴을 자동으로 만들어준다.
@NoArgsConstructor기본 생성자를 만들어준다.
@AllArgsConstructor모든 필드에 대한 생성자를 만들어준다.
나머지JPA 어노테이션 종류

Method

  • update: Setter가 권장되지 않으므로 public 접근 제어자를 가진 update를 사용해서 title과 content를 변경해 주었다. modifiedDate를 변경한 이유는 수정할 때마다 날짜를 저장해야 되기 때문이다.
profile
SRIHS 119th SW

0개의 댓글