Spring shoppingcart CRUD (Create , Read, Update)

책 장바구니에 넣기

장바구니에 또 다시 추가되면 다른 줄로 추가되는 것이 아닌 한 목록으로 추가되게 하기

장바구니 수량 변경하기

 

book_detail.jsp

하단 장바구니에 담기 버튼 생성

BookVO 객체를 넘겨주기 위해 input type="hidden"으로 book 전체 속성을 전달해준다

inCart 함수를 사용해 ajax로 페이지 이동 없이 alert을 띄워 장바구니에 담기 성공 실패 여부를 전달한다

location.href 를 showcart로 줘서 자동으로 장바구니 페이지로 이동하게 해준다

 

 

 

ShopController.java 

svc.toCart 메소드에 book 객체를 전달해 boolean 값을 전달받는다

 

ShopSVC.java  - toCart()

BookVO 객체를 파라미터로 받아 사용한다

session 에 "cart"로 넘어온 값이 null 이면 cart 객체를 담는다

null 이 아니면 session으로 넘어온 값을 Cart 객체로 받아 cart 내장 메소드 add에 book객체를 넣어 그 결과를 반환한다

 

 

Cart.java - add()

파라미터로 들어온 book과 새로 생성한 book을 비교해서 기존 들어온 book과 생성한 book이 같으면 책의 제목은 하나로 맞추고 Qty(수량)은 합하여 반환하는 메소드

 

 

Cart.java

- getList() : BookVO 값을 받는 list를 반환

- getTotal() : book의 가격과 수량을 곱해서 total을 반환

 --> 총 합계 구하기

- updateQty() : 책의 no와 qty를 받아서 book객체에서 가져온 getNo()와 전달받은 no가 같으면 전달받은 qty를 book 의 qty로 set 하는 메소드

--> 장바구니 수량 업데이트 하기

 

book_showcart.jsp

updateqty 주소로 이동해 장바구니 수량 변경을 수행한다

 

 

ShopController.java 에서는 주소를 받아서 requestParam으로 넘어온 no과 qty를 svc.updateQty로 보내 boolean 값을 전달받아 반환한다

 

 

 

 

수량변경을 선택하면 페이지 이동 없이 한 페이지 안에서 변경이 완료됨

'자바~하둡' 카테고리의 다른 글

mySQL CRUD + rambda  (0) 2022.01.19
Spring CRUD(report detail) SQL(jdbc)  (0) 2022.01.19
Spring C.R.U.D. shopingbag @PathVariable  (0) 2022.01.13
Spring C.R.U.D. (Update, Delete) +login  (0) 2022.01.12
Spring C.R.U.D.  (0) 2022.01.11
Comment