오늘은 스프링 부트를 배워서
프로젝트까지 완성해본
과정을 기록해보도록 하겠습니다!
인프런 김영한님 스프링 기초 강의를 듣고
스프링 부트 쇼핑몰 프로젝트 with JPA
도서를 참고하여 만들어본
기본적인 쇼핑몰 웹페이지를 소개해드리도록 하겠습니다!
의존성
- Spring Boot DevTools
- Lombok
- MySQL Driver
- Spring Data JPA
- Spring Web
- Spring Data JDBC
- Thymeleaf
🚩프로젝트 소개
🗓️개발 기간 : 2024.01.03 - 2024.01.29
🧑🤝🧑팀원 : 프론트 2, 백엔드 3
📌 프로젝트 설명 :
해당 프로젝트의 목표는 지구 환경에 미치는
의류 폐기물을 최소화하기 위해 해당 프로젝트를 기획하게 되었습니다.
현재 연간 12만톤의 의류폐기물이 발생하며,
이로 인해 전 세계적으로 120억 톤에 달하는 탄소배출량이 발생합니다.
이는 전 세계 온실가스 배출량의 10%에 해당하는 수치로, 환경오염의 주요 원인 중 하나입니다.
또한 버려진 폐의류는 매립지에 묻히면서 이산화탄소나 메탄 등의 유독가스를 배출하고,
소각되면서 지구온난화를 가속하는 온실가스를 방출합니다.
이러한 문제점을 해결하기 위해 중고 의류 판매 플랫폼을 구축하여
사용자들에게 중고 의류의 재활용과 재이용을 촉진하고자 합니다.
이를 통해 의류의 수명을 연장하고 폐기물 발생을 줄이는 한편,
지속 가능한 소비 문화를 확산시키고 환경 보호에 기여하는 것이 목표입니다.
📌 해당 프로젝트의 주요 기능
회원가입 / 로그인
상품 등록
상품 검색
장바구니 / 상품 주문
💻프로젝트 실행 화면
🔑회원가입 및 로그인 실행 화면
회원가입 시
회원가입할 때 입력했던 정보가 다음과 같이 sql에 저장 됩니다
로그인 시에 회원가입 시 입력한 정보와 동일한지 확인 후
정보가 동일하면 회원가입이 진행됩니다
💰 상품 등록 및 주문 실행 화면
상품 등록 시에 다음과 같이 sql에 정보가 들어오게 되고,
Run창에서 다음과 같이 상품 등록이 완료되었다는 정보를 확인할 수 있습니다
같은 name이여도 id를 통해 구분하기 때문에
검색창에 같은 상품명으로 검색하더라도 다른 상품으로 분류가 됩니다.
😄 해당 프로젝트를 진행하며 겪었던 문제들과 느낀점
스프링 부트를 처음 배우는 입장에서
초반에 기본 개념과 구조를 이해하는 데 시간이 많이 걸렸고,
특히 의존성 주입과 제어의 역전과 같은 개념은 이해하기 어려웠습니다.
그러나 팀원들과의 협업을 통해
함께 토론하고 문제를 해결하는 과정에서 많은 것을 배웠으며,
서로 도와가며 문제를 해결하고 해결한 방법을 상세하게 설명하는 과정에서
스프링 부트에 대한 이해도가 높아질 수 있었고,
끊임없는 회의와 협업을 통해 프로젝트를 성공적으로 완료할 수 있었습니다.
또한, Branch를 만들고 함께 작업을 하는 과정에서
다른 사람들과의 협업을 통해 충돌 상황을 해결하는 법을 확실히 익힐 수 있었던 거 같습니다.
이번 프로젝트에서 Swagger를 사용하지 않았지만,
앞으로는 API를 명확하게 문서화하기 위해
앞으로의 프로젝트에서는 swagger 사용법을 익혀서 프로젝트에 적용해보고 싶고,
이번 프로젝트에 진행하면서 데이터베이스의 중요성을 깨닫고
앞으로 ERD를 작성하며 안정적이고 효율적인 데이터베이스를 구축하기 위해 노력할 것입니다.
마지막으로 CRUD 기능을 더욱 깊이 이해하기 위해
다음 프로젝트에는 게시판을 생성해볼 예정입니다.
'개발 > 대외활동' 카테고리의 다른 글
대학생 첫 공모전 참여 후기 : 연세대가 공동주체하고 Google과 Tecent가 후원하는 사회문제 해결을 위한 해커톤 (1) | 2024.04.27 |
---|---|
[ 멋쟁이 사자처럼🦁 대학 11기 활동 후기 회고록 ] (0) | 2024.02.23 |