더북(TheBook)

장바구니에 도서 등록하기

1. Cart 클래스 안에 addCartItem() 메서드를 추가로 작성합니다. addCartItem() 메서드는 도서 목록 중 선택한 도서를 장바구니에 등록합니다.

코드 14-11 Cart.java

package com.springmvc.domain;
...
public class Cart {
    ...
    public void addCartItem(CartItem item) {
        String bookId = item.getBook().getBookId(); // 현재 등록하기 위한 도서 ID 가져오기

        // 도서 ID가 cartItems 객체에 등록되어 있는지 여부 확인
        if (cartItems.containsKey(bookId)) { 
            CartItem cartItem = cartItems.get(bookId); // 등록된 도서 ID에 대한 정보 가져오기
            // 등록된 도서 ID의 개수 추가 저장
            cartItem.setQuantity(cartItem.getQuantity() + item.getQuantity()); 
            cartItems.put(bookId, cartItem); // 등록된 도서 ID에 대한 변경 정보(cartItem) 저장
        } else {
            cartItems.put(bookId, item); // 도서 ID에 대한 도서 정보(item) 저장
        }
        updateGrandTotal(); // 총액 갱신
    }
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.