별도로 repository 패키지를 만듭니다.
MemberRepository를 만듭니다.
@Repository //...1
public class MemberRepository {
@PersistenceContext //...2
private EntityManager em;
//회원 저장
public void save(Member member) {
em.persist(member); //...4
}
//회원 하나만 조회
public Member findOne(Long id) {
return em.find(Member.class, id); //...5
}
//회원 리스트 조회
public List<Member> findAll() {
return em.createQuery("select m from Member m", Member.class) //...6
.getResultList();
}
//이름을 가지고 회원 조회
public List<Member> findByName(String name) {
//...3
return em.createQuery("select m from Member m where m.name = :name", Member.class)
.setParameter("name", name)
.getResultList();
}
}