본문 바로가기
IT/Java

JPA에서의 어노테이션

by 성준하이 2022. 7. 22.
반응형

JPA에서나 Springdata JDBC에 사용되는 어노테이션에 관해서 다뤄볼 것이다.

 

  • 엔티티 관련
@Entity 어노테이션을 붙이게 되면 해당 클레스가 데이터베이스의 테이블과 11 매칭이 .
@Table(name="zzz")  해당하는 테이블과 매핑됨.
@Column(aa  해당 맴버변수와 테이블의 Column 맵핑됨
@Id 해당 어노테이션이 붙은 맴버변수는 해당 테이블의 Primary key 된다. 객체를 식별할 유일값임.
@GeneratedValue(stargety=?) AUTO(default):JPA 구현체가 자동으로 생성 전략을 결정한다.
IDENTITY : 기본키 생성을 데이터베이스에 위임한다. 예를 들어 MySQL의 경우 AUTOINCREMENT 사용하여 기본키를 생성한다.
SEQUENCE: 데이터베이스의 특별한 오브젝트 시퀀스를 사용하여 기본키를 생성한다.
TABLE_: 데이터베이스에 생성 전용 테이블을 하나 만들고 이를 사용하여 기본키를 생성한다.

@JoinColumn 조인하는 컬럼명을 지정
@JoinTable N:N에 해당하는 테이블 선언시 사용됨
@ManyToOne 해당 테이블을 기준으로 N:1 관계 조인

이밖에도 많은 어노테이션들이 있지만 자주 사용하는 어노테이션 위주로 정리를 해보았다.

반응형

댓글