JPA8 - 소개 및 원리

최대 1 분 소요

JpaRepository<EntityType, Id> 인터페이스

  • 매직 인터페이스
  • @Repository가 없어도 빈으로 등록된다.

@EnableJpaRepositories

  • 이 어노테이션 내부에는 @Import(JpaRepositoriesRegistrar.class)가 존재한다.
  • JpaRepositoriesRegistrar의 최상단은 ImportBeanDefinitionRegistrar 인터페이스이다.
  • ImportBeanDefinitionRegistrar는 코드를 통해 빈을 등록할 수 있게 해주는데
  • JpaRepositoriesRegistrar는 위 인터페이스를 구현하여 JpaRepository 인터페이스를 상속받은 인터페이스를 빈으로 등록해준다.
  • Spring boot가 아닌 Spring을 사용할 경우 아래의 어노테이션을 붙여줘야 JPA를 사용할 수 있다.
  • 하지만 Spring boot는 자동으로 설정해준다.

참고: https://www.inflearn.com/course/스프링-데이터-jpa

댓글남기기