//==JPQL==//
public List<Member> findByUsernameAndAgeGreaterThan(String userName, int age) {
return em.createQuery("select m from Member m where m.userName = : username and m.age > : age")
.setParameter("username", userName)
.setParameter("age", age)
.getResultList();
}
↓
public interface MemberRepository extends JpaRepository<Member, Long> {
List<Member> findByUserNameAndAgeGreaterThan(String username, int age);
}
jpql:
findByUserName -> where m.userName = : username
AgeGreaterThan -> and m.age > age
↓
spring data jpa:
findByUserNameAndAgeGreaterThan(String username, int age);
jpql의 조건을 따로 적어주지 않아도 Spring data JPA의 문법대로 인터페이스에 메소드를 적어두면
Spring data jpa가 알아서 구현해준다.
간단하게 바꿀 수 있다.
해당 url에서 좀더 다양한 문법들을 확인 할 수 있다.
https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods.query-creation