인프런 커뮤니티 질문&답변
어떤게 영속 엔티티고 어떤게 준영속 엔티티인가요?
작성
·
209
0
아래에서 Book book 할때 book이 준영속 엔티티 인가요?
어떤게 영속 엔티티고 어떤게 준영속 엔티티인지 잘 구분이 안가는데 좀더 쉽게 설명해주실수 있나요?
@PostMapping("items/{itemId}/edit")
public String updateItem(@PathVariable String itemId, @ModelAttribute("form") BookForm form ) {
System.out.println("form.getId() ########################################## : "+ form.getId());
Book book = new Book();
book.setId(form.getId());
book.setName(form.getName());
book.setPrice(form.getPrice());
book.setStockQuantity(form.getStockQuantity());
book.setAuthor(form.getAuthor());
book.setIsbn(form.getIsbn());
itemService.saveItem(book);
return "redirect:/items";
}
그리고 아래 로직을 변경 감지로 바꿔야 되는건가요?
src\main\java\jpabook\jpashop\repository\ItemRepository.java
// 아이템 등록 함수
public void save(Item item) {
if(item.getId() == null) {
System.out.println("아이템 등록 실행 !!!!!!!!!!!!!!!!!!!!!!!!!!!");
System.out.println("id 확인 :::::::::::::" + item.getId());
em.persist(item); // 미등록 아이템일 경우 등록
} else {
System.out.println("아이템 수정 실행 !!!!!!!!!!!!!!!!!!!!!!!!");
em.merge(item); // 이미 등록된 아이템일 경우 수정
}




