๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

til86

๊ธฐ์ดˆ ํ”„๋กœ์ ํŠธ_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.
์ฃผํŠน๊ธฐ ์ž…๋ฌธ/์ˆ™๋ จ_Day 19 ์˜ค๋Š˜ ํ•œ ๊ณต๋ถ€ ๐Ÿง ๊ฐœ์ธ ๊ณผ์ œ Lv 4 ์™„์„ฑ๊ฐœ์ธ ๊ณผ์ œ Lv 5 ์™„์„ฑ๋ฒ ์ด์ง๋ฐ˜ ์„ธ์…˜ ๋“ฃ๊ธฐBean Validation ๊ฐ•์˜ ๋ณต์ŠตTIL ๋ธ”๋กœ๊ทธ ์ž‘์„ฑ ์˜ค๋Š˜ ์–ป์€ ๋‚ด์šฉ ์ •๋ฆฌ โœ๏ธ ๊ฐœ์ธ ๊ณผ์ œํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด์•ผ๊ฒ ๋‹ค!Lv 4. ๋กœ๊ทธ์ธ(์ธ์ฆ)LoginReqeustDto ์ƒ์„ฑ(email, password ํ•„๋“œ ์ถ”๊ฐ€), LoginResponseDto ์ƒ์„ฑ(member ํ•„๋“œ ์ถ”๊ฐ€), AuthController ์ƒ์„ฑ(login ๋ฉ”์„œ๋“œ ๊ตฌํ˜„), AuthService ์ƒ์„ฑ(login ๋ฉ”์„œ๋“œ ๊ตฌํ˜„), MemberRepository ์ˆ˜์ •(findByEmailAndPassword ๋ฉ”์„œ๋“œ ๊ตฌํ˜„), LoginFilter(doFilter override), WebConfig(loginFilter ๋“ฑ๋ก)Lv 5. ๋‹ค์–‘ํ•œ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ์ ์šฉํ•˜๊ธฐLv .. 2024. 12. 17.
์ฃผํŠน๊ธฐ ์ž…๋ฌธ/์ˆ™๋ จ_Day 18 ์˜ค๋Š˜ ํ•œ ๊ณต๋ถ€ ๐Ÿง ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ(Java) 1๋ฌธ์ œ ํ’€์ด & ๋ธ”๋กœ๊ทธ ์ •๋ฆฌ๊ฐœ์ธ ๊ณผ์ œ Lv 2 ์™„์„ฑ๊ฐœ์ธ ๊ณผ์ œ Lv 3 ์™„์„ฑ๋ฒ ์ด์ง๋ฐ˜ ์„ธ์…˜ ๋ธ”๋กœ๊ทธ ์ •๋ฆฌSession, Filter ๊ด€๋ จ ๊ฐ•์˜ ๋ณต์ŠตTIL ๋ธ”๋กœ๊ทธ ์ž‘์„ฑ ์˜ค๋Š˜ ์–ป์€ ๋‚ด์šฉ ์ •๋ฆฌ โœ๏ธ ๊ฐœ์ธ ๊ณผ์ œํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด์•ผ๊ฒ ๋‹ค!Lv 2์˜ ์„ ํƒ ํšŒ์› ์ˆ˜์ •, ์„ ํƒ ํšŒ์› ์‚ญ์ œ API ์ถ”๊ฐ€!Lv 3์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ ํ•„๋“œ ์ถ”๊ฐ€!Lv 4์—์„œ ๋ง‰ํ˜€๋ฒ„๋ ธ๋‹ค......๊ทธ๋ž˜์„œ ๋ฒ ์ด์ง๋ฐ˜ ์„ธ์…˜์˜ ๋…นํ™”๋ณธ๊ณผ Spring ์ˆ™๋ จ ๊ฐ•์˜๋ฅผ ๋‹ค์‹œ ๋ณด๋ฉด์„œ Session๊ณผ Filter์˜ ๊ฐœ๋…์„ ๋‹ค์‹œ ์žก๋Š”๋ฐ ์ง‘์ค‘ํ–ˆ๋‹ค!๋‚ด๊ฐ€ ์ดํ•ดํ•œ ๋‚ด์šฉ์€ Session์€ ๋กœ๊ทธ์ธ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๊ณ  ๋กœ๊ทธ์ธํ•˜๋ฉด์„œ ์„ธ์…˜ ์ €์žฅ์†Œ์— Session์ด ์ €์žฅ๋˜๊ณ  ์ธ์ฆ์ธ๊ฐ€ ๊ณผ์ •์—์„œ Session์„ ๋‹ค์‹œ ์ฐพ์•„๋ณด๋Š” ๊ณผ์ •์„ ๊ฑฐ์น˜๋Š” ๊ฒƒ์œผ๋กœ ์ดํ•ดํ–ˆ.. 2024. 12. 16.
์ฃผํŠน๊ธฐ ์ž…๋ฌธ/์ˆ™๋ จ_Day 16 ์˜ค๋Š˜ ํ•œ ๊ณต๋ถ€ ๐Ÿง ๊ฐœ์ธ ๊ณผ์ œ Lv 1 ์™„์„ฑ๊ฐœ์ธ ๊ณผ์ œ Lv 2 ์‹œ์ž‘TIL ๋ธ”๋กœ๊ทธ ์ž‘์„ฑ ์˜ค๋Š˜ ์–ป์€ ๋‚ด์šฉ ์ •๋ฆฌ โœ๏ธ ๊ฐœ์ธ ๊ณผ์ œํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด์•ผ๊ฒ ๋‹ค!์„ ํƒ ์ผ์ • ์ˆ˜์ • API ์™„์„ฑ : Todo(updateTodo ๋ฉ”์„œ๋“œ ์ƒ์„ฑ), UpdateRequestDto ์ƒ์„ฑ, TodoController(updateTodo ๋ฉ”์„œ๋“œ ์ƒ์„ฑ), TodoService(updateTodo ๋ฉ”์„œ๋“œ ์ƒ์„ฑ)์„ ํƒ ์ผ์ • ์‚ญ์ œ API ์™„์„ฑ : TodoController(deleteTodo ๋ฉ”์„œ๋“œ ์ƒ์„ฑ), TodoService(deleteTodo ๋ฉ”์„œ๋“œ ์ƒ์„ฑ)ํšŒ์› Entity ์ƒ์„ฑํšŒ์› ์ƒ์„ฑ API ์™„์„ฑ : MemberController(saveMember ๋ฉ”์„œ๋“œ ์ƒ์„ฑ), MemberService(saveMember ๋ฉ”์„œ๋“œ ์ƒ์„ฑ), MemberR.. 2024. 12. 14.