반응형
CRUD
- Create : 입력
- Read : 조회
- Update : 수정
- Delete : 삭제
1) Create 입력
- 객체를 저장하기 위해 EntityManager의 persist() 메서드를 사용한다.
- JPA는 전달된 객체의 어노테이션을 분석하여 sql문을 생성하고 데이터베이스에 전달합니다.
private static void insertLogic(EntityManager em) {
Book book = new Book();
book.setNo(1L);
book.setTitle("자바의 신");
book.setPrice(20000);
//Save
em.persist(book);
}
2) Update
- Update는 별다른 메서드 없이 클래스의 값 변경으로 update가 가능하다.
private static void logicInsertAndUpdate(EntityManager em) {
Book book = new Book();
book.setNo(2L);
book.setTitle("곰브리치 세계사");
book.setPrice(30000);
//저장
em.persist(book);
//update
book.setPrice(50000);
}
3) Read (1건)
- EntityManager의 find() 메서드 사용합니다.
- 찾을 객체의 클래스의 키 값으로 엔티티 하나를 조회한다.
- 결과값을 객체 값으로 반환합니다.
private static void logicFindOne(EntityManager em) {
//조회
Book book = em.find(Book.class, 1L);
System.out.println(book);
}
4)Read(List)
private static void logicFindList(EntityManager em) {
//List Select
TypedQuery<Book> query = em.createQuery("select b from Book b", Book.class);
List<Book> list = query.getResultList();
for(Book book : list) {
System.out.println(book);
}
}
5)Delete(삭제)
- EntityManger의 remove함수 사용합니다.
private static void logicFindOneAndDelete(EntityManager em) {
Book book = em.find(Book.class, 2L);
em.remove(book);
}
728x90
반응형