본문 바로가기
공부/Spring

[스프링 데이터 JPA] 파라미터 바인딩 종류와 컬렉션 파라미터 바인딩

by JERO__ 2022. 8. 25.

파라미터 바인딩에는 두 가지 종류가 있다.

  • 위치 기반
  • 이름 기반

하지만, 위치기반의 경우 순서실수가 바뀔 위험이 있다. 코드 가독성과 유지보수를 위해 이름기반 파라미터 바인딩을 사용하자!

예시

@Query에 적용해보자

public interface MemberRepository extends JpaRepository<Member, Long> {

	@Query("select m from Member m where m.username = :name")
	Member findMembers(@Param("name") String username);
}

컬렉션 파라미터 바인딩을 알아보자

Collection타입으로 in절을 지원한다.

@Query("select m from Member m where m.username in :names")
List<Member> findByNames(@Param("names") List<String> names);

 

댓글