일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 코딩동아리
- ㅏㄴ
- IT동아리
- discord
- 파이썬 크롤링
- 디스코드봇
- django
- 웹동아리
- 멋사12
- 백엔드
- 기사 제목 크롤링
- 멋사 서류
- 멋쟁이사자처럼10기
- 멋쟁이사자처럼대학
- 멋사11기
- 크롤링
- 깃허브
- 멋사10기
- 멋쟁이사자처럼11기
- 멋사 서류평가
- 멋쟁이 사자처럼
- 파이썬
- API
- 멋사 면접
- 멋쟁이사자처럼
- 멋사
- 멋쟁이사자처럼 서류
- 멋사 합격
- 멋사 10기
- 알림봇
- Today
- Total
목록전체 글 (83)
ACHO.pk devlog
💡ArrayIndexOutOfBoundsException 에러 배열 인덱스가 범위를 벗어나서 발생한 에러 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 36 대부분 인덱스를 벗어난 배열 요소에 액세스했기 때문에 발생한 에러이고, 나 또한 그랬다. int[] count = new int[55]; 배열의 크기를 더 크게 지정했더니 해결됐다. 📌내가 배열 크기를 26으로 생성하고, 대문자의 경우 배열의 인덱스를 26~51(알파벳 26개)까지 할당했기 때문에 배열 인덱스 범위를 넘어선 것이었다. int[] count = new int[26]; 에러 위치는 }else if(ch >= 'A' && ch
💡InputMismatchException 에러 입력값이 불일치해서 일어난 예외(Exception) Exception in thread "main" java.util.InputMismatchException at java.base/java.util.Scanner.throwFor(Scanner.java:860) at java.base/java.util.Scanner.next(Scanner.java:1497) at java.base/java.util.Scanner.nextInt(Scanner.java:2161) at java.base/java.util.Scanner.nextInt(Scanner.java:2115) at pra1.main(pra1.java:31) Process finished with exit..
1. 장바구니 담기 상품 상세 페이지에서 장바구니에 담을 상품의 아이디와 수량을 전달 받을 클래스를 생성한다. 장바구니에 담을 상품의 최소 수량은 1개 이상으로 제한한다. dto > CartItemDto package com.shop.shop.dto; import lombok.Getter; import lombok.Setter; import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; @Getter @Setter public class CartItemDto { @NotNull(message = "상품 아이디는 필수 입력 값 입니다.") private Long itemId; @Min(value = 1, mess..
1. 주문 내역 조회하기 조회할 주문 데이터를 화면에 보낼 때 사용할 DTO 클래스를 만들어보자. dto > OrderItemDto package com.shop.shop.dto; import com.shop.shop.entity.OrderItem; import lombok.Getter; import lombok.Setter; @Getter @Setter public class OrderItemDto { public OrderItemDto(OrderItem orderItem, String imgUrl){ this.itemNm = orderItem.getItem().getItemNm(); this.count = orderItem.getCount(); this.orderPrice = orderItem.get..
1. 주문 기능 구현하기 고객이 상품을 주문하면 현재 상품의 재고에서 주문 수량만큼 재고를 감소시켜야한다. 고객이 주문을 했는데 실제 재고가 없다면 배송을 하지 못하고 결품 처리가 되기 때문에 주문 수량만큼 상품의 재고를 감소시켜야한다. 상품의 주문 수량보다 재고의 수가 적을 때 발생시킬 exxeption을 정의해보자. com.shop.shoop > exception패키지 생성 > OutOfStockException package com.shop.shop.exception; public class OutOfStockException extends RuntimeException{ public OutOfStockException(String message) { super(message); } } 상품을 주문..
현재 상품 관리 페이지로 가면 볼 수 있는 화면이다. 렌더링이 안되는 것 같은데 이유를 모르겠다. 1. 메인화면 search 버튼을 이용하여 상품명으로 검색이 가능하도록 구현해보자. Querydsl을 이용하여 상품 조회 시 결과 값을 받을 때 Item 객체로 반환값을 받았다면, 이번엔 @QueryProjection을 이용하여 상품 조회 시 DTO 객체로 결과 값을 받는 방법을 알아보자. @QueryProjection을 이용하면 item 객체로 값을 받은 후 DTO 클래스로 변환하는 과정 없이 바로 DTO 객체를 뽑아낼 수 있다. dto > MainItemDto package com.shop.shop.dto; import com.querydsl.core.annotations.QueryProjection; ..
1. 상품 관리하기 상품 관리 화면에서는 상품을 조회하는 조건을 설정 후 선택한 상품 상세 페이지로 이동할 수 있는 기능까지 구현해보자. 조회조건 상품 등록일 상품 판매 상태 상품명 또는 상품 등록자 아이디 1-1. Querydsl 이용 조회 조건이 복잡한 화면은 Querydsl을 이용해 조건에 맞는 쿼리를 동적으로 쉽게 생성할 수 있다. 비슷한 쿼리를 재활용할 수 있다는 장점을 이용해보자. Querydsl을 사용하기 위해서는 Qdomain을 생성해야 한다. Qdomain을 생성하기 위해서 메이븐의 컴파일 명령을 실행한다. 정상적으로 실행이 완료되면 지금까지 생성한 엔티티 클래스들이 Qdomain 클래스로 생성된 것을 볼 수 있다. 1-2. 상품 데이터 조회 시 상품 조회 조건 클래스 생성 dto > I..
1. 상품 수정하기 상품 정보를 볼 수 있는 상품 상세 페이지와 상품 데이터를 수정해보자. 상품을 등록한 다음 해당 상품 아이디를 이용해서 상품 수정 페이지에 진입한다. service > ItemService.java package com.shop.shop.service; import com.shop.shop.dto.ItemFormDto; import com.shop.shop.dto.ItemImgDto; import com.shop.shop.entity.Item; import com.shop.shop.entity.ItemImg; import com.shop.shop.repository.ItemImgRepository; import com.shop.shop.repository.ItemRepository; ..