일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 파이썬
- baekjoon
- python
- 스프링부트
- 네트워크
- 자바
- 데이터베이스
- spring
- Oracle
- Spring Security
- 시큐리티
- CS
- DB
- Flutter
- 스프링 부트 쇼핑몰 프로젝트 with JPA
- CS지식
- Java
- 리눅스
- JPA
- 백준
- postgresql
- 자료구조
- 프로그래머스
- 데이터
- backjoon
- springboot
- 자바스크립트
- 스프링
- javascript
- 플러터
- Today
- Total
목록스프링 부트 쇼핑몰 프로젝트 with JPA (14)
Jin's Dev Story
이 내용은 스프링 부트 쇼핑몰 프로젝트 with JPA 책을 학습한 내용입니다. 1. CartItemDto 제품 상세 페이지에서 장바구니에 담을 상품 Id 와 수량을 전달 받을 DTO 객체 생성 @Getter @Setter public class CartItemDto { @NotNull(message = "상품 아이디는 필수 입력 값입니다.") private Long itemId; // 상품 아이디 @Min(value = 1, message = "최소 1개 이상 담아주세요.") private int count; // 상품 수량 } 2. Cart Entity 회원 한 명당 1개의 장바구니를 갖으므로 처음 장바구니에 상품을 담을 때는 해당 회원의 장바구니를 생성해야함 멤버를 파라미터로 받아서 장바구니를 생성..
이 내용은 스프링 부트 쇼핑몰 프로젝트 with JPA 책을 학습한 내용입니다. 1. Item Entity 주문 취소 시 상품의 재고를 상품 주문 수량만큼 다시 더해주는 addStock() 메소드를 추가함 // 상품 재고 증가시키는 메소드 public void addStock(int stockNumber) { this.stockNumber += stockNumber; } 2. OrderItem Entity Item.addStock() 메소드를 호출하는 cancel 메소드 추가 주문 상품 수량을 파라미터로 넘김 // 주문 취소시 주문 수량만큼 상품 재고 증가 public void cancel() { this.getItem().addStock(count); } 3. Order Entity 주문 상태를 CAN..
이 내용은 스프링 부트 쇼핑몰 프로젝트 with JPA 책을 학습한 내용입니다. 1. OrderItemDto 주문 상품 정보를 담을 OrderItemDto 객체 생성 주문 상품 정보 (상품, 수량)와 상품의 이미지를 담고 있음 @Getter @Setter public class OrderItemDto { private String itemNm; // 상품 이름 private int count; // 주문 수량 private int orderPrice; // 주문 가격 private String imgUrl; // 상품 이미지 public OrderItemDto(OrderItem orderItem, String imgUrl) { this.itemNm = orderItem.getItem().getItemNm..
이 내용은 스프링 부트 쇼핑몰 프로젝트 with JPA 책을 학습한 내용입니다. 1. 상품 재고 부족 Exception 상품 주문 수량보다 현재 재고의 수가 적을 때 발생시킬 Exception 정의 에러 메시지를 지정할 수 있는 RuntimeException 클래스 구현 // 상품 주문 수량보다 현재 재고의 수가 적을 때 발생시킬 Exception public class OutOfStockException extends RuntimeException { public OutOfStockException(String message) { super(message); } } 2. 상품 재고 변경 (기존 재고 - 주문 수량 재고) 로 stockNumber 수정 만약 0 보다 작다면 재고가 부족한 것이므로 Exce..
이 내용은 스프링 부트 쇼핑몰 프로젝트 with JPA 책을 학습한 내용입니다. 1. ItemController 추가 상품 수정 페이지에서 사용했던 ItemDetail 메소드를 그대로 사용하여 상품 조회 메소드 오버로딩은 파라미터의 순서가 달라도 적용이 됨 // 아이템 상세 페이지 @GetMapping("/item/{itemId}") public String itemDetail(Model model, @PathVariable("itemId") Long itemId) { ItemFormDto itemFormDto= itemService.getItemDetail(itemId); model.addAttribute("item", itemFormDto); return "item/itemDetail"; } 2. 제..
이 내용은 스프링 부트 쇼핑몰 프로젝트 with JPA 책을 학습한 내용입니다. 1. MainItemDto 메인화면에 출력할 데이터를 위한 DTO 객체 사용자에게 보여질 내용만 포함하고 있음 (등록날짜, 수정날짜, 등록자 등 제외) import com.querydsl.core.annotations.QueryProjection; import lombok.Getter; import lombok.Setter; @Getter @Setter public class ItemMainDto { private Long id; private String itemNm; private String itemDetail; private String imgUrl; private Integer price; @QueryProjecti..