โ๏ธ Today I Learned(TIL)/๐ฑ ์คํ๋ฅดํ ๋ด์ผ๋ฐฐ์์บ ํ71 [ TIL ] ์ฃผํน๊ธฐ ์ฌํ_Day 1 ์ค๋ ํ ๊ณต๋ถ ๐ง ํ๋ก์ ํธ ๋ฐ์ ๋ฃ๊ธฐ์ฌํ Spring 1์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐ์์ค๋ณ ํ์ต๋ฐ ์คํ ๋ค๋๋ฐ ์ธ์ ๋ฃ๊ธฐํํฐ๋์ ๋ฏธ๋ ์ธ์ (์ด๋ ฅ์ ํน๊ฐ) ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ์ฌํ Spring 1์ฃผ์ฐจ ๊ฐ์HttpMessageConverter → ์ฐ์ ์์์ ๋์ ์์ArgumentResolverRequestMappingHandlerAdapterReturnValueHandlerTypeConverterํ์ ๋ณํConverter Interface์์ค๋ณ ํ์ต๋ฐ - ์คํ ๋ค๋๋ฐ ์ธ์ JWT & ์ธ์ ์ด๋ ฅ์ ๋ฏธ๋ ์ธ์ ๋จ๋ค๊ณผ๋ ๋ค๋ฅธ ๋ชจ์ต์ ๋ณด์ฌ์ค์ผ ํ๋ค. ์ฐจ๋ณ์ ์ ๋ฌ์ผ ํ๋ค.ํ๊ฐ์์ ์ํฉ์ ์๊ฐํด์ผ ํ๋ค.์ ๋งคํ ์ฌ๋์ ๋ฝ์ง ์๋๋ค.๋ฌด์ธ๊ฐ๋ฅผ ์ฆ๋ช ํ ์ ์๋ ๊ทผ๊ฑฐ๊ฐ ํจ๊ป ๋์ด์ผ ํ๋ค.๊ธฐ์ ๋ธ๋ก๊ทธ๋ฅผ ์ ๋ ๊ฒ๋ ๊ต.. 2024. 12. 30. ๊ธฐ์ด ํ๋ก์ ํธ_Day 5 ์ค๋ ํ ๊ณต๋ถ ๐ง ๊ธฐ์ด ํ๋ก์ ํธ ํ์ด์ง ์กฐํ ๊ธฐ๋ฅ ํ์๋ค๊ณผ ์์ฑ๊ธฐ์ด ํ๋ก์ ํธ ๋ณํฉ ์ถฉ๋ ๊ณผ์ ํด๊ฒฐ๊ธฐ์ด ํ๋ก์ ํธ ์๋ฒ ๋ฐฐํฌ(๊ตฌ๊ฒฝ)์์ค๋ณ ํ์ต๋ฐ ๋ฒ ์ด์ง๋ฐ ์ธ์ ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ๊ธฐ์ด ํ๋ก์ ํธ (๋ด์คํผ๋ ๋ง๋ค๊ธฐ ํ๋ก์ ํธ)ํผ๋ ํ์ด์ง ์กฐํ ๊ธฐ๋ฅ ํ์๋ค๊ณผ ํจ๊ป ์์ฑํ์๋ถ์ด ํ๋ฉด ๊ณต์ ํด์ฃผ์๊ณ ํจ๊ป ํผ๋ ์ ์ฒด๋ฅผ ํ์ด์ง ์กฐํํ ์ ์๋๋ก ์ฝ๋๋ฅผ ์์ฑํ๋ค.์ฒ์ ๋ณด๋ pageable๊ณผ page ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํด์ ํ์ด์ง ์กฐํ๋ฅผ ํ ์ ์์๋ค.GitHub ๋ณํฉ ๊ณผ์ ์์์ ์ถฉ๋ ๋ฐ์๋๊ธ ๊ด๋ จ ๊ธฐ๋ฅ์ 2๋ช ์ด์ ๋ด๋นํ๋๋ฐ ์์ฑ, ์กฐํ / ์์ , ์ญ์ ๋ด๋นํด์ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ค.๊ฐ์ ๊ตฌํ์ ์ฑ๊ณตํ๊ณ GitHub์ Pull Request, fetch, rebaseํ๋ ๊ณผ์ ์์ ๋ณํฉ ์ถฉ๋์ด ๋ฐ์ํ๋ค.In.. 2024. 12. 26. ๊ธฐ์ด ํ๋ก์ ํธ_Day 7 ์ค๋ ํ ๊ณต๋ถ ๐ง ๊ธฐ์ด ํ๋ก์ ํธ ํ๋ก์ฐ ๊ธฐ๋ฅ ์์ ์์ค๋ณ ํ์ต๋ฐ ๋ฒ ์ด์ง๋ฐ ์ธ์ ๋ฃ๊ธฐ์์ค๋ณ ํ์ต๋ฐ ์คํ ๋ค๋๋ฐ ์ธ์ ๋ฃ๊ธฐ๊ธฐ์ด ํ๋ก์ ํธ ํธ๋ฌ๋ธ ์ํ (GitHub ๊ด๋ จ) ์์ฑTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ๊ธฐ์ด ํ๋ก์ ํธ (๋ด์คํผ๋ ๋ง๋ค๊ธฐ ํ๋ก์ ํธ)ํ๋ก์ฐ ๊ธฐ๋ฅ ์์ ํ๋ก์๋ง ์กฐํ๊ฐ ๊ฐ๋ฅํด์ ํ๋ก์ ์ ์ฒด ์กฐํ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ค.ํ๋ก์ฐ๋ฅผ ๊ณ์ ํ ์ ์๋ ์ํฉ์ด ๋ฐ์ํด์ ํ ๋ฒ๋ง ๊ฐ๋ฅํ๋๋ก ์์ธ ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ์๋ค.๋ฒ ์ด์ง๋ฐ ์ธ์ ์ธ์ฆ์ธ๊ฐํ์ฉ(ํ ํฐ์ธ์ฆ๋ฐฉ์: JWT)์คํ ๋ค๋๋ฐ ์ธ์ ์ค๋ ๋์ ๋ชจ๋ ๊ฒ ์ค๋ ํ๋ฃจ ์ ๋ฆฌ โ๏ธ์ค๋ ํ๋ฃจ๋ฅผ ์ ๋ฆฌํ์๋ฉด ๊ธฐ์ด ํ๋ก์ ํธ์ ๋ง๋ฌด๋ฆฌ...? ๋จ๊ณ์๋ ๊ฒ ๊ฐ๋ค. ๋ด์ผ ์์ ๋์ด ์๋ ํ๋ก์ ํธ ๋ฐํ๋ฅผ ์ํด ๊ธฐ๋ฅ์ ์ ๊ฒํ๊ณ ์์ ํ๋ ์๊ฐ์ ๊ฐ์ก๋ค.๋ด๊ฐ ๋งก์๋ ํ๋ก์ฐ ๊ธฐ๋ฅ์์ ํ๋ก์์ ์กฐํํ๋ .. 2024. 12. 26. ๊ธฐ์ด ํ๋ก์ ํธ_Day 4 ์ค๋ ํ ๊ณต๋ถ ๐ง ๊ธฐ์ดํ๋ก์ ํธ ํ๋ก์ฐ ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ๊ธฐ์ด ํ๋ก์ ํธ ํ๋ก์ฐ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ๊ธฐ์ด ํ๋ก์ ํธ ํน์ ๋ฉค๋ฒ์ ํ๋ก์ฐ ์ ์ฒด ์กฐํ ๊ธฐ๋ฅ ๊ตฌํTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ๊ธฐ์ด ํ๋ก์ ํธ (๋ด์คํผ๋ ๋ง๋ค๊ธฐ ํ๋ก์ ํธ)ํ๋ก์ฐ ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํFollow Entity ์์ฑ ํ ํ๋ก์ฐ๋ฅผ ์ถ๊ฐํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ค.member_id(PathVariable)์ following_id)๋ฅผ ๋ฐ์ ํ๋ก์ฐ ๊ด๊ณ๋ฅผ ์์ฑํ๋ ๊ธฐ๋ฅ์ ๊ตฌํ ์ฑ๊ณตํ๋ค.ํ๋ก์ฐ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํmember_id(PathVariable)์ follow_id(Pathvariable)๋ฅผ ๋ฐ์ ํ๋ก์ฐ ๊ด๊ณ๋ฅผ ์ญ์ ํ๋ ๊ธฐ๋ฅ์ ๊ตฌํ ์ฑ๊ณตํ๋ค.ํน์ ๋ฉค๋ฒ์ ํ๋ก์ฐ ์ ์ฒด ์กฐํ ๊ธฐ๋ฅ ๊ตฌํmember_id(PathVariable)๋ฅผ ๋ฐ์ ํ๋ก์ ๋ฉค๋ฒ๋ฅผ ์ ์ฒด .. 2024. 12. 23. ๊ธฐ์ด ํ๋ก์ ํธ_Day 1 ์ค๋ ํ ๊ณต๋ถ ๐ง ํ๋ก์ ํธ ๋ฐ์ ๋ฃ๊ธฐ๊ธฐ์ด ํ๋ก์ ํธ S.A ์์ฑ๊น ๋ฉ์์ง ๊ด๋ จ ๋ฏธ๋ ์ธ์ ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ๊ธฐ์ด ํ๋ก์ ํธ (๋ด์คํผ๋ ๋ง๋ค๊ธฐ ํ๋ก์ ํธ)application.yml ํ์ผapplication.properties ํ์ผ์ ๋ค๋ฅธ ๋ฒ์ → ํ ํ๋ก์ ํธ ์ ์๋ก์ ํ๊ฒฝ์ ์์ ๋กญ๊ฒ ์์ฑํ๊ณ gitignore๋ฅผ ํตํด commit์์ ์ ์ธ์ํฌ ์ ์๋ค.ERD ๊ด๋ จ ์๋ก ์๊ฒ ๋ ๋ด์ฉ์ฐ๊ด๊ด๊ณ ์ฐ๊ฒฐ์ ํ์ง ์๊ณ ๋ id์ type ๊ฐ์ ์ด์ฉํด์ ํด๊ฒฐํ ์ ์๋ค.๋ฏธ๋ ์ธ์ : ๋ด์ฉ → ex) Feat: Add Level 1............์ปค๋ฐ์ ๋ํ ๋ด์ฉ ์์ฑ : ๋ฌด์จ ๊ธฐ๋ฅ์ ๊ตฌํํ๋์ง, ๋ญ๋ฅผ ์ถ๊ฐํ๋์ง ๊ตฌ์ฒด์ ์ผ๋ก ์ ์์๋ก ํ์๋ค์ด ๋ณด๊ธฐ ์ฝ๋ค!์์ฆ์ ๊น๋ชจ์ง๋ฅผ ์ด์ฉํด์ ๋ํ๋ด๊ธฐ๋ .. 2024. 12. 20. ์ฃผํน๊ธฐ ์ ๋ฌธ/์๋ จ_Day 20 ์ค๋ ํ ๊ณต๋ถ ๐ง ๊ฐ์ธ ๊ณผ์ Lv 5 ์์ฑ๊ฐ์ธ ๊ณผ์ Lv 6 ์์ฑ๊ฐ์ธ ๊ณผ์ Lv 7 ์์ฑAPI ๋ช ์ธ์ & ERD ์์ TIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ๊ฐ์ธ ๊ณผ์ ํ ๋ด์ฉ์ ์ ๋ฆฌํด์ผ๊ฒ ๋ค!Lv 6. ๋น๋ฐ๋ฒํธ ์ํธํ ๊ณผ์ ์๊ตฌ์ฌํญ์ ์๋ ์ฝ๋๋ฅผ ํ์ฉํด์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ํธํํด์ ์ ์ฅํ๋ค.PasswordEncoder์ Encode, matches ๋ฉ์๋๋ฅผ ํ์ฉํด์ ๋น๋ฐ๋ฒํธ ์ํธํ ๋ฐ ๋น๋ฐ๋ฒํธ ์ผ์น ์ฌ๋ถ๋ฅผ ํ์ธํ๋ค.Lv 7. ๋๊ธ CRUDcomment Entity๋ฅผ ์์ฑํ๋ค.member Entity์ todo Entity ๊ฐ์ ์ฐ๊ด๊ด๊ณ๋ฅผ ์ค์ ํ๋ค.๊ทธ ํ ๋๊ธ ์์ฑ, ์ ์ฒด ๋๊ธ ์กฐํ, ์ ํ ์ผ์ ์ ์ ์ฒด ๋๊ธ ์กฐํ, ์ ํ ๋๊ธ ์์ , ์ ํ ๋๊ธ ์ญ์ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ค.API ๋ช ์ธ์์ ERD ์์ ์ค๋ ํ๋ฃจ .. 2024. 12. 18. ์ด์ 1 2 3 4 5 6 7 ยทยทยท 12 ๋ค์