다음으로 Memo클래스를 저장소인 Repository를 생성해주었습니다.
@Repository
@RequiredArgsConstructor
public class MemoRepository {
private final EntityManager em;
//저장
public void save(Memo memo) {
em.persist(memo);
}
//삭제
public void remove(Memo memo) {
em.remove(memo);
}
//정보 업데이트
public void update(Memo memo, String title, String content) {
memo.setTitle(title);
memo.setContent(content);
}
public Memo findOne(Long id) {
return em.find(Memo.class, id);
}
public List<Memo> findAll() {
return em.createQuery("SELECT M FROM Memo AS M", Memo.class)
.getResultList();
}
//검색 로직
public List<Memo> findSearch(String keyWord) {
return em.createQuery("SELECT M FROM Memo AS M WHERE M.title LIKE :keyWord", Memo.class)
.setParameter("keyWord", "%" + keyWord + "%")
.getResultList();
}
}