pageable 2

나머지 기능들

1. Specifications (명세) Spring Data JPA는 JPA Criteria를 활용하여 명세의 개념을 사용할 수 있도록 지원(잘 사용하는 기능아님, 참고용) 명세란 도메인에 관한 규칙을 담는 도메인 객체로 객체가 특정 조건을 만족하는지를 판단하는 역할을 담당한다. 나중에 도메인 주도 설계(DDD)책을 한번 읽어보자!! 사용하고자 하는 곳에서 JpaSpecificationExecutor을 상속받아 사용하면 된다. 해당 인터페이스 내부에 들어가보면 findOne, findAll 등등 여러 메서드를 제공하는데 Parameter로 Specification이란 것을 넘긴다. 술어(predicate) 참 또는 거짓으로 평가 AND OR 같은 연산자로 조합해서 다양한 검색조건을 쉽게 생성(컴포지트 ..

확장 기능

1. 사용자 정의 Repository 스프링 데이터 JPA가 제공하는 기능을 사용하기 위해 우리는 JpaRepository 인터페이스를 상속받아 사용하고 구현체는 스프링이 자동으로 생성하여 주입시켜준다. 만약 이를 개발자가 직접 구현하려한다면(implements) 구현해야 하는 메서드들이 굉장히 많기 때문에 매우 번거롭고 까다롭다. 아래와 같은 이유로 만약 인터페이스의 메서드를 직접 구현하려한다면? JPA 직접 사용( EntityManager ) 스프링 JDBC Template 사용 MyBatis 사용 Querydsl 사용 데이터베이스 커넥션 직접 사용 등등... 커스텀 메서드를 딱 하나만 구현하고 싶을 때 사용하는 방법이다. 먼저 커스텀 인터페이스를 만들고 그 안에 메서드를 추가한다. 그 뒤에 인터페이..

반응형