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

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ199

์ฃผํŠน๊ธฐ ์ž…๋ฌธ/์ˆ™๋ จ_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.
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_์นด๋“œ ๋ญ‰์น˜(Java) ๋ฌธ์ œ ์„ค๋ช…https://school.programmers.co.kr/learn/courses/30/lessons/159994 ํ”„๋กœ๊ทธ๋ž˜๋จธ์ŠคSW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„programmers.co.kr ์ฝ”๋‹ˆ๋Š” ์˜์–ด ๋‹จ์–ด๊ฐ€ ์ ํžŒ ์นด๋“œ ๋ญ‰์น˜ ๋‘ ๊ฐœ๋ฅผ ์„ ๋ฌผ๋กœ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ์ฝ”๋‹ˆ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทœ์น™์œผ๋กœ ์นด๋“œ์— ์ ํžŒ ๋‹จ์–ด๋“ค์„ ์‚ฌ์šฉํ•ด ์›ํ•˜๋Š” ์ˆœ์„œ์˜ ๋‹จ์–ด ๋ฐฐ์—ด์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.์›ํ•˜๋Š” ์นด๋“œ ๋ญ‰์น˜์—์„œ ์นด๋“œ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ํ•œ ์žฅ์”ฉ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.ํ•œ ๋ฒˆ ์‚ฌ์šฉํ•œ ์นด๋“œ๋Š” ๋‹ค์‹œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.์นด๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋‹ค์Œ ์นด๋“œ๋กœ ๋„˜์–ด๊ฐˆ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.๊ธฐ์กด์— ์ฃผ์–ด์ง„ ์นด๋“œ ๋ญ‰์น˜์˜ ๋‹จ์–ด ์ˆœ์„œ๋Š” ๋ฐ”๊ฟ€ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ฒซ ๋ฒˆ์งธ ์นด๋“œ ๋ญ‰์น˜์— ์ˆœ์„œ๋Œ€๋กœ .. 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.
์ฃผํŠน๊ธฐ ์ž…๋ฌธ/์ˆ™๋ จ_Day 15 ์˜ค๋Š˜ ํ•œ ๊ณต๋ถ€ ๐Ÿง ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ(Java, SQL) 1๋ฌธ์ œ ํ’€์ด & ๋ธ”๋กœ๊ทธ ์ •๋ฆฌ๋ฒ ์ด์ง๋ฐ˜ ์ˆ˜์ค€๋ณ„ ํ•™์Šต๋ฐ˜ ์„ธ์…˜ ๋“ฃ๊ธฐ๊ฐœ์ธ ๊ณผ์ œ ์‹œ์ž‘!! (Lv 1 ์ค‘๊ฐ„๊นŒ์ง€)TIL ๋ธ”๋กœ๊ทธ ์ž‘์„ฑ ์˜ค๋Š˜ ์–ป์€ ๋‚ด์šฉ ์ •๋ฆฌ โœ๏ธ ๊ฐœ์ธ ๊ณผ์ œํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด์•ผ๊ฒ ๋‹ค!API ๋ช…์„ธ์„œ์™€ ERD๋ฅผ ์ž‘์„ฑํ–ˆ๋‹ค! → ์•„์ง ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘์„ฑํ•˜์ง€ ์•Š์•„์„œ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ํ•˜๋Š” ์ค‘๊ฐ„์ค‘๊ฐ„ ์ฑ„์›Œ๋„ฃ์„ ์˜ˆ์ •์ด๋‹ค!Lv 1์„ ์‹œ์ž‘ํ•˜๊ณ  ์ผ์ • ์ƒ์„ฑ, ์ „์ฒด ์ผ์ • ์กฐํšŒ, ์„ ํƒ ์ผ์ • ์กฐํšŒ ๊ธฐ๋Šฅ๊นŒ์ง€ ๊ตฌํ˜„ํ–ˆ๋‹ค!์ผ์ • ์ƒ์„ฑ API : TodoController(saveTodo ๋ฉ”์„œ๋“œ ์ƒ์„ฑ), TodoService(saveTodo ๋ฉ”์„œ๋“œ ์ƒ์„ฑ), TodoRepository( extends JpaRepository)์ „์ฒด ์ผ์ • ์กฐํšŒ API : TodoController(findAll ๋ฉ”์„œ๋“œ ์ƒ์„ฑ).. 2024. 12. 13.