JPA를 사용하는 이유를 설명해주세요.
백엔드와 관련된 질문이에요.
데이터 액세스 기술을 사용하는 Spring 기반 애플리케이션을 더 쉽게 구축할 수 있습니다.
애플리케이션에 대한 데이터 액세스 계층을 구현하는 것은 상당히 번거로울 수 있습니다. 가장 간단한 쿼리를 실행하려면 너무 많은 상용구 코드를 작성해야 합니다. 페이지 매김, Auditing, 기타 자주 필요한 옵션을 추가하면 결국 길을 잃게 됩니다.
Spring Data JPA는 실제로 필요한 만큼의 노력으로 데이터 액세스 계층의 구현을 크게 개선하는 것을 목표로 합니다. 개발자는 다양한 기술을 사용하여 리포지토리 인터페이스를 작성하면 Spring이 자동으로 이를 연결해 줍니다. 심지어 사용자 정의 파인더를 사용하거나 예제를 통해 쿼리를 작성하면 Spring이 쿼리를 작성해줍니다.
- 더 이상 DAO 구현이 필요하지 않습니다. 인터페이스를 확장함으로써 표준 DAO에서 사용할 수 있는 표준 데이터 액세스에 가장 적합한 CRUD 방법을 얻을 수 있습니다.
- 사용자 정의 액세스 메서드 및 쿼리
- 인터페이스에서 새로운 메소드를 정의하기만 하면 됩니다.
@Query
주석을 사용하여 JPQL 쿼리 제공- Spring Data의 고급 사양 및 Querydsl 지원을 사용
- JPA Named 쿼리를 통해 사용자 정의 쿼리 사용
- Automatic 사용자 정의 쿼리: 정의된 모든 메서드를 분석하고 메서드 이름에서 쿼리를 자동으로 생성 하려고 시도합니다
- Transaction Configuration: 클래스 수준에서 읽기 전용
@Transactional
주석을 사용하고, 읽기 전용이 아닌 메서드에 대해 재정의됩니다.
공유하기
컨텐츠 피드백