1.ํ๋ก์ ํธ ์๊ฐ
2.์ ์ถํ์ผ
3.ERD
4.Class Diagram
5.๊ตฌํ ํ๋ฉด
6.๋ฐ์ผ๋ฆฌ ์คํฌ๋ผ
Luminous๋ฅผ ํตํด ์ฒ๋ฌธ๋, ์บ ํ์ฅ, ๋ณ์๋ฆฌ, ์ด์ธ, ๋ ์จ, ์ง๋ ์ ๋ณด๋ฅผ ์ป๊ณ , ์ฒ์ฒด ๊ด์ธก๊ณผ ๊ด๋ จ๋ ์ ๋ณด๋ฅผ ๊ณต์ ํ ์ ์์ต๋๋ค!
mwb, dump ํ์ผ์ resources ํด๋ ๋ด๋ถ์ ์์ต๋๋ค. ์ด๋ฏธ์ง๋ image ํด๋ ๋ด๋ถ์ ์์ต๋๋ค.
230516 ์
230517 ํ
230518 ์
230519 ๋ชฉ
230520 ๊ธ
230521 ํ
230522 ์ผ
230523 ์
230524 ํ
230525 ์
์ด์คํ
-
SpringBoot ํ๋ก์ ํธ ๊ตฌ์ถ
- SpringBoot 2.x , Java 11 ,JPA, MySQL
- ์ธํ ๋ฆฌ์ ์ด
-
๋ ธ์ ์ ๋ฆฌ
-
todo list ์ ๋ฆฌ
-
constellation, fortune, observatory, place ์ค๊ณ
-
JPA ์ฐ๋
-
๋๋ฉ์ธ ์ธํ
-
๋ด์ผ ํ ๊ฑฐ
- ๋๋ฉ์ธ ์ธ๋ถ ์ธํ ํ์ํด์
- ์ฐ๊ด๊ด๊ณ ๋งคํ
์ฑํฌ์ฐฌ
- Member ํ์ ๊ฐ์ ๊ธฐ๋ฅ API ๊ตฌํ
- Member ์์ด๋ ์ค๋ณต ๊ฒ์ฌ ๊ธฐ๋ฅ API ๊ตฌํ
- Vue ํ๋ก์ ํธ ๊ตฌ์ถ
- Vue.js 2.x
- API ์คํ ์ ๋ฆฌ
ํ์ค๋ชจ
- ๋๋ฉ์ธ ์ค๊ณ
- DB ๊ตฌ์ถ
- ํ๋ฉด ์ค๊ณ
- API ์ ๋ฆฌ
- ๋ ์จ : ๊ธฐ์์ฒญ_๋จ๊ธฐ์๋ณด ((๊ตฌ)_๋๋ค์๋ณด) ์กฐํ์๋น์ค
- ๋ฏธ์ธ๋จผ์ง : ํ๊ตญํ๊ฒฝ๊ณต๋จ_์์ด์ฝ๋ฆฌ์_๋๊ธฐ์ค์ผ์ ๋ณด
- ์ง๋ : kakao map api
- ๋ณ์๋ฆฌ : DB์ ์ ์ฅ : ๊ณผํ๊ธฐ์ ์ ๋ณดํต์ ๋ถ ๊ตญ๋ฆฝ์ค์๊ณผํ๊ด_๊ณผํํ์ต์ฝํ ์ธ _๋ณ๊ณผ๋ณ์๋ฆฌ
์ด์คํ
- ๋ง์ดํ๋ ์ด์ค CRUD ๊ตฌํ
- ๋ง์ดํ๋ ์ด์ค - ๋ฉค๋ฒ ๋จ๋ฐฉํฅ ์ฐ๊ด๊ด๊ณ ๋งคํ
- ๋ง์ดํ๋ ์ด์ค ๊ฒ์ ๊ธฐ๋ฅ
- ๋ฉค๋ฒ์ด๋ฆ, ์ฅ์์ด๋ฆ, ์ฅ์์ค๋ช
์ฑํฌ์ฐฌ
- ๋ก๊ทธ์ธ ๊ธฐ๋ฅ API ๊ตฌํ
- ํ์๊ฐ์ API ๊ตฌํ
- JWT ํ ํฐ ๋ฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ํ ํฐ์์ ๊ฐ ๋ถ๋ฆฌํ id ๊ฐ์ ธ์ค๊ธฐ ๊ธฐ๋ฅ ๊ตฌํ
- id๋ก ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ API ๊ตฌํ
ํ์ค๋ชจ
- ๋ก๊ทธ์ธ,๋ก๊ทธ์์ ํ๋ก ํธ ๊ตฌํ
- JWT ํ๋ก ํธ ๊ธฐ๋ฅ ๊ตฌํ
- ํ์๊ฐ์ ํ๋ก ํธ ๊ธฐ๋ฅ ๊ตฌํ
- ํซํ๋ ์ด์ค ๊ฒ์ํ CRUD ํ๋ก ํธ ๊ตฌํ
- ๊ธฐ๋ฅ ํ์
- ๊ฒ์ํ ๊ธฐ๋ฅ ..?
์ด์คํ
- BaseResponse, BaseException ๋ดํฌํจํด ์ ์ฉ
- ChatGPT API๋ฅผ ํ์ฉํ ์ค๋์ ์ด์ธ ๋ฐ์์ค๊ธฐ
- ๊น ์ด๊ทธ๋ ธ์ด ํ์ผ ์ค์
- ์ค๋์ ์ด์ธ API ๊ตฌํ
์ฑํฌ์ฐฌ
- Member ๋ฉ์๋ BaseResponse ์ ์ฉ
- Camping ๊ณต๊ณต๋ฐ์ดํฐ์์ ๋ฐ์ดํฐ DB์ ์ฅ API ๊ตฌํ
- ๋ก๊ทธ์ธ ์ค๋ฅ ์์
- ํ์ํํด API ๊ตฌํ
ํ์ค๋ชจ
- ์นด์นด์ค๋งต ๊ฒ์ํ ๊ธ ์์ธํ ๋ณด๊ธฐ์์ ์ด๊ธฐ
- ์นด์นด์ค๋งต ํ์ด์ง ๊ฝ ์ฑ์ฐ๋ ์ง๋์น ๋ง๋ค๊ธฐ
- ์ค๋์ ์ด์ธ ์นด๋ ๋ง๋ค๊ธฐ ๋์ฐ๋๊ฑด ๋์ค์
- ํ์๊ฐ์ ๊ธฐ๋ฅ ๋ฐ ๋์์ธ ์์
- ์ฒ๋ฌธ๋ API getLIST ๊ตฌํ
- ๊ธฐ๋ฅ ํ์
- ๊ฒ์ํ ๊ธฐ๋ฅ ..?
์ด์คํ
- BaseResponse, BaseException ๋ดํฌํจํด ์ ์ฉ
- ChatGPT API๋ฅผ ํ์ฉํ ์ค๋์ ์ด์ธ ๋ฐ์์ค๊ธฐ
- ๊น ์ด๊ทธ๋ ธ์ด ํ์ผ ์ค์
- ์ค๋์ ์ด์ธ API ๊ตฌํ
์ฑํฌ์ฐฌ
- Member ๋ฉ์๋ BaseResponse ์ ์ฉ
- Camping ๊ณต๊ณต๋ฐ์ดํฐ์์ ๋ฐ์ดํฐ DB์ ์ฅ API ๊ตฌํ
- ๋ก๊ทธ์ธ ์ค๋ฅ ์์
- ํ์ํํด API ๊ตฌํ
ํ์ค๋ชจ
- ์นด์นด์ค๋งต ๊ฒ์ํ ๊ธ ์์ธํ ๋ณด๊ธฐ์์ ์ด๊ธฐ
- ์นด์นด์ค๋งต ํ์ด์ง ๊ฝ ์ฑ์ฐ๋ ์ง๋์น ๋ง๋ค๊ธฐ
- ์ค๋์ ์ด์ธ ์นด๋ ๋ง๋ค๊ธฐ ๋์ฐ๋๊ฑด ๋์ค์
- ํ์๊ฐ์ ๊ธฐ๋ฅ ๋ฐ ๋์์ธ ์์
- ์ฒ๋ฌธ๋ API getLIST ๊ตฌํ
์ด์คํ
- ์ฃผ๋ง
์ฑํฌ์ฐฌ
- ์ฃผ๋ง
ํ์ค๋ชจ
-
๊ฒ์ํ ๋ฑ๋ก, ์์ , ์ญ์ ๊ธฐ๋ฅ ์๋ฒฝํ ๊ตฌํ
ํ์ํํด๊ธฐ๋ฅ๋ง ์๋ฃ
-
๋ก๊ณ ๋ง๋ค๊ธฐ
-
์ง๋์ ์์ญ๋ผ๋ฆฌ๋ง
-
์บ ํ ๋ ๋๋ง ๋ ๋ฌธ์ ํด๊ฒฐ
์ด์คํ
- client jwt ํค๋์ ๋ด๊ธฐ
- axios.interceptor ์ค์
- ๋ง์ดํ์ด์ง, ๋ก๊ทธ์์ item ์ ํ์ ์ด๋์ผ๋ก ์์
- place ์์ ๋ฏธ๋ฐ์ ์ค๋ฅ ํด๊ฒฐ
- place update sql ์๋ฌ ํด๊ฒฐ ํ ์ด๋ธ ๋ช ๋๋ฌธ์ โ ์๋ฌธ์
- ์ฌ์ฉ์ ์ ๋ณด๋ก ์ค๋์ ์ด์ธ ๋ฝ์์ฃผ๊ธฐ โ getTodayFortune
- ๋ก๊ทธ์ธ์ ํค๋์ ํ ํฐ ๋ด์ ํด๋ผ์ด์ธํธ๋ก ๋ณด๋ด๊ธฐ โ ํด๋ผ์ด์ธํธ์์ ํค๋๋ฅผ ๋ฐ๋์ฒ๋ฆฌ๊น์ง ์๋ฃ
- member ์ํฐํฐ์ ํฉ๊ถ12์ฑ ๋ณ์๋ฆฌ ๊ด๊ณ ์ถ๊ฐ โ OneToOne
์ฑํฌ์ฐฌ
- ์บ ํ์ฅ ์ ๋ณด API โ DB
- ์ฒ๋ฌธ๋ ๋ชฉ๋ก ๋ฐํ API ๊ตฌํ
ํ์ค๋ชจ
- ์ฒ๋ฌธ๋ ๋ชฉ๋ก API ์์
- ์คํ : jwt๋ฅผ ์ localstorage์ ์๋ด๊ณ sessionstorage์ ๋ด์์ฉ?@๋ฉ๋ชจ
- @์ค๋ก ๊ต์๋๊ป์ session์ ๋ด๋๋ค๊ณ ํด์์ฉ ใ ์ ๋ ์ ๋ชจ๋ฅด๊ฒ ๋ค์ฉ ใ ใ
- ์คํ :@Transactional ์ ๋ํ์ฌ
- javax ๋ณด๋ค springframework์ ํธ๋์ญ์ ์ด ์ต์ ์ด ๋ ๋ง์
- ์ฝ๊ธฐ๋งํ๋ ๊ฒฝ์ฐ get, getList ๋ฑ์ ๋์๋ง ํ๋ ๊ฒฝ์ฐ Transactional(readOnly =true) ์ต์ ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ฑ๋ฅ์ด ๋ ์ข์ ์ why? โ ์์์ฑ ๊ด๋ฆฌ๋ฅผ ๋ฐ๋ก ํ์ง์๊ธฐ ๋๋ฌธ์ ์์์ฑ ์ปจํ ์คํธ๊ฐ ๋ณ๊ฒฝ๊ฐ์ง๋ฅผ ์ํ ์ค๋ ์ท์ ๋ณด๊ดํ์ง ์์ + c์ถ๊ฐ์ ์ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง ์์
- ์ํฐํฐ์ ์์ ์ด ์ด๋ฃจ์ด์ง๋ ๊ฒฝ์ฐ ํธ๋์ญ์ ๋ด์์ ๋์ํ๋ค๋ฉด JPA ๊ฐ ์๋์ผ๋ก update๊ด๋ฆฌ๋ฅผ ํด์ฃผ์ง๋ง ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ์๋ ์ง์ save๋ก ์ ๋ฐ์ดํธ ๋์์ ์ํํด์ฃผ์ด์ผํจ
์ด์คํ
- ํฉ๊ถ 12์ฑ ๋ฆฌ์คํธ ์ ๋ณด ๊ตฌํ - ์๋ฒ
- ๋ณ์๋ฆฌ ๋ฆฌ์คํธ ์ ๋ณด - ์๋ฒ
- ๋ณ์๋ฆฌ์ ์ ๋ณด๋ด๊ธฐ - ์ด๋ฆ์ด๋ ์ ๋ณด ๋ด๊ธฐ
- ์๋น์ค๋ก์ง ํธ๋์ญ์ ์ค์
- ์ค๋์ ์ด์ธ ์นด๋ ๋ค์ ์ค๋ช ์ถ๊ฐํ๊ธฐ
- ์ค๋์ ์ด์ธ ์นด๋ ํ๋ฆฝ ๊ธฐ๋ฅ ๊ตฌํ
์ฑํฌ์ฐฌ
- ์ฌ์ฉ์ ์ ๋ณด ์์ API ๊ตฌํ
ํ์ค๋ชจ
- ์ฒ๋ฌธ๋ db ์ขํ๋ ๋ฃ๊ธฐ
- ์ง๋์ ๋ง์ดํ๋ ์ด์ค๊น์ง ๋ค ๋์ฐ๊ธฐ
- ๊ฒ์ํ ๋ฑ๋ก ๋ฐ ์์ ์ค๋ ์๋ฃํ๊ธฐ
- ์ฒ๋ฌธ๋ ๋ฆฌ์คํธ ํ์ ๋ฐ ์ฒ๋ฌธ๋ ์กฐํ์ ์ง๋๋ ํ์
- ๊ฒ์ํ ์ฒ๋ฌธ๋ ๊ฒ์ ๊ธฐ๋ฅ ์๋ฃ
- ๋ง์ปค ํด๋ฆญ ์ด๋ฒคํธ ๊ตฌํ
- ํ์ ์์ ์๋ฃ
- ํ์๊ฐ์ ๊ท์น ์ ๊ท์ ํํ
- ๋ก๊ทธ์ธ ํ์๊ฐ์ ์คํจ์ ์์ ์๋ก์ด div๊ฐ ์๊ธฐ์ง ์๊ณ ์๋์ ์์ ๊ธ์๋ก ์ค๋ฅ ๋ฐ์์ ์๋ ค์ฃผ๋๋ก ์์
- ์ง๋ ์ฌ์ด๋๋ฐ ๊ตฌํ ์ค๋น
- ์ฒ๋ฌธ๋ ui ๋ณ๊ฒฝ
- UI ํ ์ก๊ธฐ
- ๋ฉ์ธํ์ด์ง ๊ตฌํ
- ๋ ์จ api ๊ฐ์ ธ์ค๊ธฐ
- ๋ง์ดํ์ด์ง์ ์๋ ๋ณ์๋ฆฌ ๋ฒํธ ๋ณ์๋ฆฌ๋ก ๋งคํ
- navbar์ ํ์ ์ฌ์ง ๋ณ์๋ฆฌ ๋ง๋ค ์ฌ์ง ๋ฐ๊ฟ์ฃผ๊ธฐ
- ๋ง์ดํ๋ ์ด์ค ๊ฒ์ํ ๋๊ธ (ํ์ ) ๊ธฐ๋ฅ
- ๋ณ์๋ฆฌ ์์ธ ์ค๋ช ํ์ด์ง ๊ตฌํ
- ํ์๊ฐ์ ์ ์๋ ์์ผ ๋ณ์๋ฆฌ ๋งคํ
์ด์คํ
-
ํ์๊ฐ์ ์ ์๋ ์์ผ ๋ณ์๋ฆฌ ๋งคํ
-
ํ์ ์ ๋ณด ์์ ์ ๋ณ์๋ฆฌ ๋ณ๊ฒฝ
-
๋ณธ์ธ ๋ณ์๋ฆฌ ๋ค์จ์ฌ์ธ ํจ๊ณผ๋ฃ๊ธฐ
-
์นด๋ํ๋ฆฝ์ ํ๊ธฐ๋ ํจ๊ณผ ์ค์ด๊ธฐ
-
๋ณ์๋ฆฌ ๊ฐ ๋ฃ๊ธฐ
-
user status ์์ฑ
USER, ADMIN, DELETED
-
User ์ญ์ ์ status Deleted๋ก ๋ณ๊ฒฝ์ผ๋ก
-
๋ก๊ทธ์ธ ํ๋ฉด์์ ๋ก๊ทธ์ธ ํ๋ฉด์ ๋ค๋น๊ฒ์ด์ ๊ฐ๋ ์๋ฌ ํด๊ฒฐ
-
์ค๋์ ์ด์ธ ์์ด์ฝ ๋ณ๊ฒฝ
-
๋ณ์๋ฆฌ ์ ๋ณด Carousel์ ๋ฃ๊ธฐ
์ฑํฌ์ฐฌ
- ์บ ํ์ฅ ์ธ๋ถ ์ ๋ณด DTO ์์
- ์บ ํ ๊ฒ์ํ CRUD๊ตฌํ
- ์บ ํ ๊ฒ์ํ ๋ํ ์ผ ๊ตฌํ
- ์บ ํ ๋ฆฌ์คํธ ๋ฐํ DTO ์์
- ์บ ํ View ํ์ด์ง ๊ตฌํ
- ์บ ํ์ฅ ์ง์ญ๋ช ์ผ๋ก ๊ฒ์ API ๊ตฌํ
- ์๋ธ ๋ฉ๋ด ๋์์ธ ๋ณ๊ฒฝ
- ์บ ํ view ํํ์ด์ง ์ ๋ณด ์์
ํ์ค๋ชจ
- ๋ก๊ทธ์ธ ํ์ด์ง UI ๋ณ๊ฒฝ
- ํ์ ์ ๋ณด ์์ ๊ธฐ๋ฅ
- ์์ด์ฝ ๋ณ๊ฒฝ
- ๋ง์ปค ํด๋ฆญ ์ด๋ฒคํธ ๊ตฌํ
- ์ง๋ ์ฌ์ด๋๋ฐ ๊ตฌํ
- ๋ก๊ทธ์ธ ์ฟ ํค ๊ตฌํ ์๋ฃ
- ์ง๋ UI ๋ณ๊ฒฝ
- ๊ฒ์ํ ๋ฑ๋ก์ ์ด๋ฏธ์ง ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๊ตฌํ
- ๊ฒ์ํ ํ์ ํน์ ๋๊ธ ๊ตฌํ โ ํ๊ท ํ์
- ์ด๋ฏธ์ง ์ ์ฅ
- ui ๋ณ๊ฒฝ
- ๋ ์จ , ํ(๋ฉ์ธํ์ด์ง)
- ๊ฒฝ๋ก
- ์ง๋์์ ๊ฐ ์ขํ์ ์ ๋ณด ๋งคํ
- ํ์ ์์ ์ ๋น๋ฐ๋ฒํธ ์ ๊ท์
- navbar ํ์์ ๋ณด ์ด๋ฏธ์ง ๋งคํ
- ํ์ผ ์ ๋ก๋
- ํ์ ํํด, ๊ด๋ฆฌ์ status
- ๋ณ์๋ฆฌ UI ๊พธ๋ฏธ๊ธฐ
์ด์คํ
-
๋ณ์๋ฆฌ UI ๊พธ๋ฏธ๊ธฐ
-
ํ์ ํํด, ๊ด๋ฆฌ์ status
-
ํ์ผ ์ ๋ก๋
-
๋ณ์๋ฆฌ ํ ์ฒ๋ฆฌ, ํค๋ณด๋์ฒ๋ฆฌ
-
s3 ์ฐ๋์ผ๋ก ํ์ผ ์ ๋ก๋ ๊ตฌํ
[run]-[configuration]
vm option์ ์๋ ๋ฌธ์ฅ ์ถ๊ฐ
- -Dcom.amazonaws.sdk.disableEc2Metadata=true
-
place list dto ์์
-
navbar ํ์์ ๋ณด ์ด๋ฏธ์ง ๋งคํ โ ์๋ฐํ ์ด๋ฏธ์ง
-
๊ฒ์ํ ์ ๋ ฌ๊ธฐ๋ฅ ์ถ๊ฐ
-
์บ ํ์ฅ๊ณผ ์ฒ๋ฌธ๋ UI ๋ถ๋ฆฌ
์ฑํฌ์ฐฌ
- ์บ ํ์ฅ UI ๋ณ๊ฒฝ
- ์บ ํ์ฅ ์ ๋ณด ์ถ๊ฐ
- ์บ ํ์ฅ location ์ง๋๋ก ์ด๋
- ์บ ํ์ฅ ํ์ ์ถ๊ฐ
- ํ์ ์ฃผ๊ธฐ ๊ธฐ๋ฅ
- ์์น๊ธฐ๋ฐ ์ ๋ณด๋ก ์บ ํ์ฅ ๋ชฉ๋ก ์์ฒญ API ๊ตฌํ
ํ์ค๋ชจ
- ๊ฒ์๊ธ ์์ฑ formDATA ํ์์ผ๋ก ๋ณ๊ฒฝ - ์ฌ์ง ์ถ๊ฐ ์ํด์
- MAP UI ์์
- ํ์๊ฐ์ ์ ํ์ํญ๋ชฉ ์๋ฌ์ฒ๋ฆฌ UX ์ถ๊ฐ
์ด์คํ
- ์ฒ๋ฌธ๋ UI ๊ตฌํ
- ์บ ํ ์์ธ์ ๋ณด DTO ์์
- ๊ฒ์๊ธ ์์ API ํ๋ก ํธ ,์๋ฒ ์ค๋ฅ ์์
- ํซํ๋ ์ด์ค ์ข์์ ๊ธฐ๋ฅ ์ถ๊ฐ
- keyup์ด๋ฒคํธ๋ก ํ์ดํ๋ง๋ค ๊ฒ์๊ธฐ๋ฅ ๊ตฌํ
์ฑํฌ์ฐฌ
- ๋ฉ์ธ ํ์ด์ง ๊ตฌํ
- ๋ฉ์ธ ํ์ด์ง UI ์ค๊ณ
- ๋ฉ์ธ ํ์ด์ง ์ค๋์ ์ด์ธ ๋ณด๊ธฐ ๊ธฐ๋ฅ ๊ตฌํ
- ํค๋ ์คํ์ผ ๋ณ๊ฒฝ
- ํซํ๋ ์ด์ค UI ์์
- ์ฒ๋ฌธ๋ ๋ํ ์ผ ํ์ด์ง ๊ตฌํ
- ์ฒ๋ฌธ๋ ์ถ์ฒ API ๊ตฌํ
- footer ์์
ํ์ค๋ชจ
- ๋ ์จ API ์ถ๊ฐ
- ๋ ์จ ์ด๋ฏธ์ง ๋ ๋๋ง
- ๋ ์จ API ์์ธ๊ธฐ๋ฅ ๊ตฌํ
- stick sidebar๋ก ์๋จ ๋ฐ๋ก ์ด๋ ๊ธฐ๋ฅ ๊ตฌํ
- ์ง๋ ์์ธ์ ๋ณด ํ์ฌ ํ์ด์ง์์ ์ด๋ฆฌ๋๋ก ์์
- ์นด์นด์ค๋งต์์ ์ด๋ฏธ์ง ๋ถ๋ฌ์ค๊ธฐ
- ์นด์นด์ค๋งต ์์ ๋ ์จ ๋ง์ปค ํ์
- ๋ ์จ ์ขํ ์์

















