๐ŸŒฑย ์ฟผ๋ฆฌ ๋ฉ”์†Œ๋“œ ๊ธฐ๋Šฅ

๋ฉ”์†Œ๋“œ ์ด๋ฆ„์œผ๋กœ ์ฟผ๋ฆฌ ์ƒ์„ฑ

์ˆœ์ˆ˜ JPA ๋ฆฌํฌ์ง€ํ† ๋ฆฌ

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();
}

์ˆœ์ˆ˜ JPA ํ…Œ์ŠคํŠธ ์ฝ”๋“œ

@Test
public void findByUsernameAndAgeGreaterThan() {
		Member m1 = new Member("AAA", 10);
    Member m2 = new Member("AAA", 20);
    memberJpaRepository.save(m1);
    memberJpaRepository.save(m2);

    List<Member> result = memberJpaRepository.findByUsernameAndAgeGreaterThan("AAA", 15);

    assertThat(result.get(0).getUsername()).isEqualTo("AAA");
    assertThat(result.get(0).getAge()).isEqualTo(20);
    assertThat(result.size()).isEqualTo(1);
}

์Šคํ”„๋ง ๋ฐ์ดํ„ฐ JPA

public interface MemberRepository extends JpaRepository<Member, Long> {

    List<Member> findByUsernameAndAgeGreaterThan(String username, int age);
}

์ฟผ๋ฆฌ ๋ฉ”์†Œ๋“œ ํ•„ํ„ฐ ์กฐ๊ฑด