전체 글63 (7) 상품 구매 구현 이번 시간에는 상품을 구매했을 때, 해당 구매한 주문 상품 정보가 장바구니에 담기는 과정을 어떻게 구현했는지 정리해보겠습니다.(어쩌지.... 주문 조회 기능을 '장바구니에 담는다'로 표현해 구현했는데, 포스팅을 작성하며 이 표현이 찜하기 기능과 혼동을 줄 수 있다는 점을 느꼈습니다.)회원은 위의 그림과 같이 '상품 판매'와 '상품 구매'를 할 수 있습니다.상품 판매/구매를 구현하기 위해서는 다음과 같은 요구사항을 구현해야 합니다.회원은 상품을 등록해 판매할 수 있다.회원은 상품을 장바구니에 넣어 주문할 수 있다.회원은 변심으로 장바구니를 삭제할 수 있다.회원은 자신이 등록한 상품, 장바구니를 조회할 수 있다. 1. 구매과정을 도식화구매한 상품을 회원의 장바구니에 담는 과정을 구현하기 위해, 아래 그림과 .. 2022. 8. 2. (6) 쿠키, 세션, 인터셉터를 활용하여 로그인 구현 이번 시간에는 로그인과 로그아웃을 어떻게 구현했는지 정리해보도록 하겠습니다.우선 로그인 처리를 위한 보안 요구사항은 다음과 같습니다.로그인 사용자만 해당 웹페이지를 사용할 수 있다.로그인 하지 않은 사용자가 웹페이지에 접근하면 로그인 화면으로 이동된다.쿠키,세션,인터셉터를 사용하여 인증체크를 구현한다. 로그인 처리하기 - 서블릿 HTTP 세션인프런 강의에서 쿠키, 세션, 인터셉터를 활용한 로그인 구현 방법을 배웠고, 이번 프로젝트에서도 해당 방식을 적용했습니다. 서블릿은 세션을 위해 HttpSession 이라는 기능을 제공한다.서블릿을 통해 HttpSession 을 생성하면 쿠키를 생성해준다.쿠키 이름이 JSESSIONID 이고, 값은 추정 불가능한 랜덤 값이다.@PostMapping("/login")p.. 2022. 8. 2. (5) Querydsl을 사용하여 페이징 조회 쿼리 작성 이번 시간에는 필요한 검색 기능을 구현하기 위해 페이징 처리와 동적 쿼리 작성을 어떻게 했는지 다뤄보겠습니다. 특히, Querydsl을 활용한 동적 쿼리 작성 방법에 대해 설명하겠습니다. 1. 사용자 정의 리포지토리상품 검색과 관련된 페이징 로직은 ItemRepository에서 ItemRepositoryCustom을 구현하여, 해당 인터페이스를 상속받은 구현체에서 구현하였습니다.기본적인 JPARepository 기능만으로는 동적 쿼리와 복잡한 페이징 로직을 처리하기 어려운 경우가 많기 때문에, ItemRepositoryCustom 인터페이스와 그 구현체인 ItemRepositoryCustomImpl로 나누어 관리했습니다. ItemRepositoryCustomImpl에서는 Querydsl을 활용하여 검색에.. 2022. 8. 2. (3) 상품 업로드 구현 애플리케이션의 구조 설계 과정과 이를 기반으로 한 코드 구현 방식을 정리해보고자 합니다.프로젝트 기획 단계에서 정한 규칙인 'MVC 구조', '예외 처리', '결과 반환 시 엔티티 직접 노출 금지' 등을 고려하여 구현을 진행했습니다.이번 포스팅에서는 상품 등록 로직과 등록된 상품을 상세 조회하는 로직을 어떻게 작성했는지에 대해 구체적으로 다루어보겠습니다.상품 등록계층 설계MVC(Model-View-Controller) 패턴을 기반으로 계층을 설계하고, Controller, Service, Repository 구조를 적용하여 코드를 작성했습니다. Controller: 클라이언트 요청을 받아 데이터를 Service로 전달.Service: 비즈니스 로직 처리. 상품 정보 저장과 파일 업로드를 관리.Reposi.. 2022. 8. 1. 이전 1 ··· 9 10 11 12 13 14 15 16 다음