[ 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개의 댓글

관련 채용 정보