[Project] Shopping Mall

Seonghun Kimยท2022๋…„ 10์›” 14์ผ
0

Project!

๋ชฉ๋ก ๋ณด๊ธฐ
1/1

๐Ÿ›’ Shopping Mall Project

Spring Boot, Spring Data JPA, Spring Security ๋“ฑ์˜ ๊ธฐ์ˆ ์Šคํƒ์„ ์ด์šฉํ•˜์—ฌ ํ•˜๋‚˜์˜ ์‡ผํ•‘๋ชฐ ์„œ๋น„์Šค๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ์ˆ ๋“ค์— ๋Œ€ํ•œ ์ต์ˆ™ํ•œ ํ™œ์šฉ๊ณผ ์ „์ฒด์ ์ธ ๊ฐœ๋ฐœ ํ๋ฆ„์„ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์— ์ค‘์ ์„ ๋‘๊ณ  ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.


๐Ÿ”ง Tech Stack

Back

  • Java, Spring Boot, Spring Data JPA, Spring Security
  • MySQL, Hibernate

Front

  • HTML, CSS, Javascript, Thymeleaf

๐Ÿ“ฑ Services

โœ” Member

  • ํšŒ์›๊ฐ€์ž…, ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ
  • ์—ญํ• (admin, user)์— ๋”ฐ๋ฅธ ๊ถŒํ•œ ์„ค์ •

โœ” Item

  • ์ƒํ’ˆ ๋“ฑ๋ก - create
  • ์ƒํ’ˆ ์กฐํšŒ - read
    • ์กฐํšŒ๋ฅผ ์œ„ํ•œ ์กฐ๊ฑด ํ•„ํ„ฐ๋ง ๋ฐ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ
    • ๊ด€๋ฆฌ์ž์™€ ์ผ๋ฐ˜ ํšŒ์›์— ๋”ฐ๋ฅธ ์กฐํšŒ
  • ์ƒํ’ˆ ๊ด€๋ฆฌ - update delete

โœ” Order

  • ์ƒํ’ˆ ์ฃผ๋ฌธ - create
  • ์ฃผ๋ฌธ ๋‚ด์—ญ ์กฐํšŒ - read
  • ์ฃผ๋ฌธ ์ทจ์†Œ - delete

โœ” Cart

  • ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ์ƒํ’ˆ ์ถ”๊ฐ€ - create
  • ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์กฐํšŒ - read
  • ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์ƒํ’ˆ ์ •๋ณด ์ˆ˜์ • - update
  • ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ์žˆ๋Š” ์ƒํ’ˆ ์‚ญ์ œ - delete
  • ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ์žˆ๋Š” ์ƒํ’ˆ ์ฃผ๋ฌธ

๐Ÿ’พ Database Design

  • member : ์‡ผํ•‘๋ชฐ ํšŒ์› ์ •๋ณด ํ…Œ์ด๋ธ”
  • item : ์ƒํ’ˆ ์ •๋ณด ํ…Œ์ด๋ธ”
  • item_img : ์ƒํ’ˆ ์ด๋ฏธ์ง€ ์ •๋ณด ํ…Œ์ด๋ธ”
  • order : ํšŒ์›๋“ค์˜ ์ฃผ๋ฌธ ์ •๋ณด ํ…Œ์ด๋ธ”
  • order_item : ์ฃผ๋ฌธ์ด ์™„๋ฃŒ๋œ ์ƒํ’ˆ ์ •๋ณด ํ…Œ์ด๋ธ”
  • cart : ํšŒ์›๋“ค์ด ์ƒ์„ฑํ•œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์ •๋ณด ํ…Œ์ด๋ธ”
  • cart_item : ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ๋‹ด๊ธด ์ƒํ’ˆ ์ •๋ณด ํ…Œ์ด๋ธ”

๐Ÿ“‘ API Design

Method URL Description
GETย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  /ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย  ๋ฉ”์ธ ํŽ˜์ด์ง€ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย 
GET /members/new ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€
POST /members/new ํšŒ์›๊ฐ€์ž…
GET /members/login ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€
GET /members/login/error ๋กœ๊ทธ์ธ ์‹คํŒจ ํŽ˜์ด์ง€
GET /admin/item/new ์ƒํ’ˆ ๋“ฑ๋ก ํŽ˜์ด์ง€ (๊ด€๋ฆฌ์ž)
POST /admin/item/new ์ƒํ’ˆ ๋“ฑ๋ก (๊ด€๋ฆฌ์ž)
GET /admin/item/{itemID} ์ƒํ’ˆ ์ˆ˜์ • ํŽ˜์ด์ง€ (๊ด€๋ฆฌ์ž)
POST /admin/item/{itemID} ์ƒํ’ˆ ์ˆ˜์ • (๊ด€๋ฆฌ์ž)
GET /admin/items ์ƒํ’ˆ ๊ด€๋ฆฌ ํŽ˜์ด์ง€ (๊ด€๋ฆฌ์ž)
GET /item/{itemId} ์ƒํ’ˆ ์ƒ์„ธ ํŽ˜์ด์ง€
POST /order ์ƒํ’ˆ ์ฃผ๋ฌธ
GET /orders ์ฃผ๋ฌธ ๋‚ด์—ญ ์กฐํšŒ
POST /order/{orderId}/cancel ์ฃผ๋ฌธ ์ทจ์†Œ
POST /cart ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ์ƒํ’ˆ ์ถ”๊ฐ€
GET /cart ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์กฐํšŒ
PATCH /cartItem/{cartItemId} ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์ƒํ’ˆ ์ˆ˜๋Ÿ‰ ๋ณ€๊ฒฝ
DELETE /cartItem/{cartItemId} ์žฅ๋ฐ”๊ตฌ๋‹ˆ์—์„œ ์ƒํ’ˆ ์ œ๊ฑฐ
POST /cart/order ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์ƒํ’ˆ ์ฃผ๋ฌธ

๐Ÿ’ก Result

Github - knavoid/shopping-mall

0๊ฐœ์˜ ๋Œ“๊ธ€