[SpringBoot] Entity / JPA (0814)

왕감자·2024년 8월 14일

KB IT's Your Life

목록 보기
129/177

Entity

테이블이라고 생각하면 됨~!

컬럼용 변수는 int 보다 Integer를 강요함


@GeneratedValue(strategy = GenerationType.IDENTITY)
: 알아서 1씩 증가 시켜줌 = Auto increment

@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
Long id;

🤔 변수 앞에 public?

@Entity
public class Item {

    @Id @GeneratedValue(strategy = GenerationType.IDENTITY)
    public Long id;

    public String title;
    public Integer price;
}

다른 모든 클래스에서 문제없이 사용하기 위해서~!
안전을 위해 private을 붙인다면 - getter, setter 필요


컬럼 타입 강제로 지정

String : VARCHAR(255)
+) @Column(columnDefinition="TEXT"): TEXT 타입으로 변경됨

VARCHAR인데 길이를 더 늘리고 싶다면? : @Column(length=1000)


JPA

JPA로 데이터 입출력하기
1. repository 만들기

  • interface (extends JapRepository<Entity명, id컬럼타입>
  • 인터페이스로 만들어도 내부적으로 같은 이름의 class도 생성해줌 - DB입출력 함수 들어있음
  1. 원하는 클래스에 repository 등록
  • @RequiredArgsConstructor + private final
  1. repository.입출력문법() 쓰기

0개의 댓글