Team project - 쇼핑몰 구현

2024. 4. 22. 12:55개발일지

프로젝트 개발 동기 및 목표

Spring Boot, JPA, Spring Security 등의 기술스택들을 이론적으로 학습한 뒤에 실제로 어떻게 동작하는지 이해하기 위해서 Team project 주제로 쇼핑몰 구현해보는 것을 선택하였다. 실 생활에서 가장 많이 접하고 있는 쇼핑몰이 어떻게 구현되고 있는지 궁금하여 선택하게 되었으며, 흔한 쇼핑몰 프로젝트일지라도 완성하는 것에 초점을 두지 않고, 사용되는 기술에 대한 정확한 개념 및 사용법, 그리고 동작원리에 대해서 초점을 맞추었고, 또한 개발 과정에서 맞이하는 에러 및 궁금증들을 자세하게 찾아보고 정리하면서 전체적인 흐름 파악을 목표로 두었으며, 프론트보다는 백엔드에 좀 더 집중하였다.

 

 

 

프로젝트 개발 환경

  1. 운영체제 : Window 11
  2. 통합개발환경(IDE) : IntelliJ
  3. JDK 버전 : JDK 17
  4. 스프링 부트 버전 : 3.2.3
  5. 데이터 베이스 : MySQL
  6. 빌드 툴 : Gradle
  7. 관리 툴 : GitHub

 

 

프로젝트 기술 스택

 

  • 프론트엔드
    - HTML, CSS, JS, BootStrap, Thymeleaf
  • 백엔드
    - Spring Boot, Spring Security, Spring Data JPA
  • 데이터베이스
    - Hibernate, MySQL

 

 

 

프로젝트 구현 기능

  • 회원 (Member)

- 회원가입 / 로그인 / 로그아웃 / 마이페이지 (마이페이지 : 로그인 한 유저만 접근 가능함)

  • 상품 (Product)

- 상품 등록 / 상품 관리 / 상품 수정 / 상품 조회 / 상품 상세 보기  (조회, 상세보기는 모든 이용자가 접근 가능하며, 등록, 수정, 삭제는 관리자만 접근 가능함)

  • 공지사항(Notice) 

- 공지사항 등록 / 수정 / 삭제 / 전체 조회 / 상세 보기 (조회, 상세보기는 모든 이용자가 접근 가능하며, 등록, 수정, 삭제는 관리자만 접근 가능함)

  • 고객센터 게시판(Board) 

- 게시글 등록 / 수정 / 삭제  / 전체 조회 / 상세 보기 (조회, 상세보기는 모든 이용자가 접근 가능하며, 등록, 수정, 삭제는 회원, 관리자만 접근 가능함)

  • 구매후기 게시판(Review) 

- 리뷰 등록 / 수정 / 삭제 / 전체 조회 / 상세 보기 (조회, 상세보기는 모든 이용자가 접근 가능하며, 등록, 수정, 삭제는 회원, 관리자만 접근 가능함)

  • 장바구니 (Cart)

- 장바구니 담기 / 장바구니 조회 / 장바구니 아이템 수정 / 장바구니 아이템 삭제 / 장바구니 상품 주문

  • 주문 (Orders)

- 상품 주문 / 주문 내역 조회 / 주문 취소

 

 

 

화면 디자인

화면디자인.pptx
1.25MB

 

 

 

 

ERD 설계

화면흐름도 최종1.drawio
0.11MB

 

 

 

 

프로젝트 개발일지

 --- 생략 ---

 

 

 

 

프로젝트 설계도 파일 첨부

설계도.pptx
0.08MB

 

 

 

 

프로젝트 시 미 완성 부분 처리

  • 마이페이지 : 로그인한 유저만 접근 가능하게 나타내었음. (회원 정보 수정, 내가 쓴 글 표시)
  • product : 파일 업로드 시 오류가 발생하여 insert가 안되어 fileservice를 생략하고 프로젝트를 완성하였음. 이 후 오류의 원인을 파악하여 파일 업로드를 하면 하드 디스크에 저장될 수 있도록 구현 함. (enctype="multipart/form-data" 설정도 되어있어서 오류 찾는데 미궁 속에 빠졌었으나, 해결. 나의 경우는 id와 name명에서 오타가 있었고, button type도 다시 한번 확인하자.)
  • board 및 review (게시글) : 팀 프로젝트 진행 시, Member와 board, Review 의 연관성이 없이 진행되었으나, 1:N 관계를 설정하여 코드를 완성하였고, 마이페이지에 나타나게 하였음.
  • board 및 review (댓글) : 댓글 입력이 오류 발생으로 삽입이 안되었으나, 추후 에러를 찾아 삽입 가능하게 하였으며, 게시글 및 댓글 수정, 삭제 구현함.
  • cart : 회원의 cart 설정에 오류가 있어 list를 나타내지 못하였으나, 추후 에러를 찾아 list 및 총 금액을 나타나게 하였음.
  • order : 수정 중에 있음.

 

 

 

GitHub

https://github.com/AREUMRR/Shoppingmall_Project

 

GitHub - AREUMRR/Shoppingmall_Project

Contribute to AREUMRR/Shoppingmall_Project development by creating an account on GitHub.

github.com

 

'개발일지' 카테고리의 다른 글

Team project - 쇼핑몰 구현(2)  (0) 2024.04.29
Team project - 쇼핑몰 구현(1)  (2) 2024.04.26
Spring Security - 회원가입 강화  (0) 2024.04.16
PaginationUtil  (0) 2024.04.11
SecurityConfig  (0) 2024.04.11