본문 바로가기
IT/spring

스프링 @GeneratedValue 어노테이션

by 뉴코딩맨 2023. 7. 3.
스프링 프레임워크에서 사용되는 @GeneratedValue 어노테이션에 대해 알아보겠습니다. @GeneratedValue 어노테이션은 JPA(Java Persistence API)를 기반으로 한 ORM(Object-Relational Mapping) 기술에서 엔티티 클래스의 주요 키(primary key) 값을 자동으로 생성하기 위해 사용됩니다.
 
 

@GeneratedValue 어노테이션의 역할

@GeneratedValue 어노테이션은 엔티티 클래스의 주요 키 값을 자동으로 생성하기 위해 사용됩니다. 이 어노테이션을 사용하여 자동 생성 전략을 설정할 수 있습니다. 주로 데이터베이스에서 제공하는 시퀀스(sequence)나 자동 증가(auto increment) 기능을 활용하여 주요 키 값을 생성합니다.
 

@GeneratedValue 어노테이션 사용 예시

다음은 스프링에서 @GeneratedValue 어노테이션을 사용한 예시입니다.
 
@Entity
@Table(name = "users")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    
    // Other properties and methods
}

 

위 예시에서 User 클래스의 id 속성에 @GeneratedValue 어노테이션이 붙어 있습니다. @GeneratedValue 어노테이션을 사용하여 id 값이 자동으로 생성되도록 설정하였습니다. GenerationType.IDENTITY 옵션을 사용하면 데이터베이스의 자동 증가 기능을 활용하여 id 값을 생성합니다.

 

 

결론

@GeneratedValue 어노테이션은 엔티티 클래스의 주요 키 값을 자동으로 생성하기 위해 사용됩니다. 이 어노테이션을 사용하여 자동 생성 전략을 설정할 수 있으며, 주로 데이터베이스의 시퀀스(sequence)나 자동 증가(auto increment) 기능을 활용하여 주요 키 값을 생성합니다.
 
스프링의 @GeneratedValue 어노테이션을 사용하면 엔티티 클래스의 주요 키 값을 편리하게 관리할 수 있습니다.
 

'IT > spring' 카테고리의 다른 글

스프링 @Temporal 어노테이션  (0) 2023.07.03
스프링 @Transient 어노테이션  (0) 2023.07.03
스프링 @Column 어노테이션  (0) 2023.07.03
스프링 @Table 어노테이션  (0) 2023.07.03
스프링 @Id 어노테이션  (0) 2023.07.03

댓글