최대 1 분 소요

  • 위치 기반 (안씀)
  • 이름 기반
1
2
select m from Member m where m.username = ?0 // 위치 기반
select m from Member m where m.username = :username // 이름 기반

파라미터 바인딩

1
2
@Query("select m from Member m where m.username = :username and m.age = :age")  
List<Member> findUser(@Param("username") String username, @Param("age") int age);

참고 : 코드 가독성과 유지보수를 위해 이름 기반 파라미터 바인딩을 사용하자. (위치 기반은 순서 실수가 .. ㅎ)

컬랙션 파라미터 바인딩 Collection타입으로 in절 지원

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

다음과 같이 in절로 여러 names를 받아서 조회 가능하다.

로그에 in 절로 잘 들어간 걸 볼 수 있다.

태그: ,

카테고리:

업데이트:

댓글남기기