์คํ๋ฅดํ87 [ TIL ] ์ฃผํน๊ธฐ ์ฌํ_Day 3 ์ค๋ ํ ๊ณต๋ถ ๐ง ์ฌํ Spring 3์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ์ฌํ Spring ๊ฐ์ ๋ฃ๊ธฐ@PostConstruct, @PreDestroy annotation์ ํ์ค annotation์ด๊ธฐ ๋๋ฌธ์ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ์ฉ์ด ๋ถ๊ฐ๋ฅํ๋ค.→ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ด๊ธฐํ, ์ข ๋ฃ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ @Bean์ initMethod, destroyMethod๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.Bean ScopeSpring ์ปจํ ์ด๋์์ Bean์ด ์ด๋ป๊ฒ ์์ฑ๋๊ณ ๊ด๋ฆฌ๋๋์ง๋ฅผ ์ ์ํ๋ ๊ฐ๋ ์ด๋ค.@ExceptionHandler annotation์ด ์ ์ธ๋์ง ์์ ์ปจํธ๋กค๋ฌ์ ์์ธ ์ฒ๋ฆฌ๋ ๋ถ๊ฐ๋ฅํ๋ค.Annotation์ฉ๋๋ฐํ ํ์์์ ์ฒ๋ฆฌ ๋ฒ์@ExceptionHandlerํน์ ์ปจํธ๋กค๋ฌ ๋ด์์ ๋ฐ์ํ.. 2025. 1. 1. [ TIL ] ์ฃผํน๊ธฐ ์ฌํ_Day 2 ์ค๋ ํ ๊ณต๋ถ ๐ง ์ฌํ Spring 1์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐ → ์ด์ ๋ค์๋ ๋ถ๋ถ๋ถํฐ ์ด์ด์ ์๊ฐ์ฌํ Spring 2์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐํ ์คํธ ์ฝ๋ ์ด๋ก ์ธ์ ๋ฃ๊ธฐ์ฐ๋ง ๊ธฐ๋ ๋ผ๋์ค ๐คฉTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ์ฌํ Spring ๊ฐ์ ๋ฃ๊ธฐProxy ๊ฐ์ฒด๋ ์์์ฑ ์ปจํ ์คํธ๋ฅผ ํตํด ๋์์ ๋ฐ์์ผ๋ง ์ค์ Entity์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.LazyInitializationException → ์ค์ JPA ๊ฐ๋ฐ์์ ๊ฐ์ฅ ๋ง์ด ๋ง์ฃผ์น๋ Exception์์์ฑ ์ ์ด๋ ์ง์ฐ ๋ก๋ฉ, ์ฆ์ ๋ก๋ฉ๊ณผ๋ ์๋ฌด ๊ด๋ จ์ด ์๋ค.๊ฐ์๋ฅผ ๋ฃ๋ค๊ฐ ๊ถ๊ธํ๋ ์ FetchType.LAZY์ ๊ฐ๋ ์ก๊ธฐFetchType.LAZY: ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ์ค์ ๋ก ์ ๊ทผํ ๋ ๊ฐ์ ธ์ค๋ ๋ฐฉ์์ด๋ค. ๊ด๋ จ๋ Entity๋ฅผ ํธ์ถํ๊ธฐ ์ ๊น์ง๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์กฐํ.. 2024. 12. 31. [ TIL ] ์ฃผํน๊ธฐ ์ฌํ_Day 1 ์ค๋ ํ ๊ณต๋ถ ๐ง ํ๋ก์ ํธ ๋ฐ์ ๋ฃ๊ธฐ์ฌํ Spring 1์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐ์์ค๋ณ ํ์ต๋ฐ ์คํ ๋ค๋๋ฐ ์ธ์ ๋ฃ๊ธฐํํฐ๋์ ๋ฏธ๋ ์ธ์ (์ด๋ ฅ์ ํน๊ฐ) ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ์ฌํ Spring 1์ฃผ์ฐจ ๊ฐ์HttpMessageConverter → ์ฐ์ ์์์ ๋์ ์์ArgumentResolverRequestMappingHandlerAdapterReturnValueHandlerTypeConverterํ์ ๋ณํConverter Interface์์ค๋ณ ํ์ต๋ฐ - ์คํ ๋ค๋๋ฐ ์ธ์ JWT & ์ธ์ ์ด๋ ฅ์ ๋ฏธ๋ ์ธ์ ๋จ๋ค๊ณผ๋ ๋ค๋ฅธ ๋ชจ์ต์ ๋ณด์ฌ์ค์ผ ํ๋ค. ์ฐจ๋ณ์ ์ ๋ฌ์ผ ํ๋ค.ํ๊ฐ์์ ์ํฉ์ ์๊ฐํด์ผ ํ๋ค.์ ๋งคํ ์ฌ๋์ ๋ฝ์ง ์๋๋ค.๋ฌด์ธ๊ฐ๋ฅผ ์ฆ๋ช ํ ์ ์๋ ๊ทผ๊ฑฐ๊ฐ ํจ๊ป ๋์ด์ผ ํ๋ค.๊ธฐ์ ๋ธ๋ก๊ทธ๋ฅผ ์ ๋ ๊ฒ๋ ๊ต.. 2024. 12. 30. ๋ด์ค ํผ๋ ํ๋ก์ ํธ_๊ฐ์ธ KPT ํ๊ณ ๋ด์ค ํผ๋ ํ๋ก์ ํธ Keep: ์ด๋ฒ ํ๋ก์ ํธ์์ ์ ์งํ์ผ๋ฉด ํ๋ ๋ถ๋ถ์ฒด๊ณ์ ์ธ ํ๋ก์ ํธ ์งํ๋ด ์ญ๋์ ์ ํํ ํ์ ํ๊ณ ๋ฌด๋ฆฌํ์ง ์๋ ๋ฒ์ ๋ด์์ ํ๋ก์ ํธ๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ์งํํ๋ค.์๊ฒฌ ๊ฒฝ์ฒญ๊ณผ ํ๋ ฅ์ ์ธ ๋ถ์๊ธฐํ์๋ค์ ์๊ฒฌ์ ์ ๊ทน์ ์ผ๋ก ๊ฒฝ์ฒญํ๋ฉด์ ํ์ ์ ์์ด ๊ธ์ ์ ์ธ ๋ถ์๊ธฐ๋ฅผ ๋ง๋ค์๋ค.์ง๋ฌธ์ ๋ํ ์น์ ํ ๋ต๋ณํ์์ด ๋ชจ๋ฅด๋ ์ ์ ๋ฌผ์ด๋ดค์ ๋, ์๋ ๋ฒ์ ๋ด์์ ์์ธํ ์ค๋ช ํ๋ฉด์ ์ง์์ ๊ณต์ ํ๊ณ ์ ๋ฆฌํ ์ ์์๋ค.์ฑ ์๊ฐ์ ๊ฐ์ง๊ณ ๋งก์ ์ญํ ์์๋ด๊ฐ ๋งก์ ํํธ๋ฅผ ์๋ฒฝํ๊ฒ ๋ง๋ฌด๋ฆฌํด ํ๋ก์ ํธ๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๋ง๋ฌด๋ฆฌํ ์ ์์๋ค. Problem: ๊ฐ์ ์ด ํ์ํ ๋ถ๋ถ์๊ฒฌ ์ ๋ฌ ๋ถ์กฑ๋ฌธ์ ์ : ๋ด ์๊ฒฌ์ ํ์๋ค์๊ฒ ๋ช ํํ๊ฒ ์ ๋ฌํ์ง ๋ชปํ๋ค.ํด๊ฒฐ ๋ฐฉ์:์๊ฒฌ์ ์ ์ ๋ฆฌํด์ ์ ๋ฌํ๋ ์ฐ์ต์ ๊พธ์คํ ํ๊ณ , ํ์ํ ๊ฒฝ์ฐ์๋ ๊ฐ๋จํ ๋ฌธ์๋ ์๋ฃ.. 2024. 12. 29. ๋ด์ค ํผ๋ ํ๋ก์ ํธ_ํ KPT ํ๊ณ ๋ด์ค ํผ๋ ํ๋ก์ ํธ Keep: ์ด๋ฒ ๊ณผ์ ์์ ์ ์งํ์ผ๋ฉด ํ๋ ๋ถ๋ถ์ ๋ฌด ๋ถ๋ดํ์ ๊ฐ์ ์ญ๋์ ํ์ ํ ๋ค, ๋ฌด๋ฆฌํ์ง ์๋ ์ ์์ ์ฑ์ฅํ ์ ์๋๋ก ์ ๋ฌด๋ฅผ ๋ถ๋ดํ๋ค.๊ฐ ํ์์ด ์์ ์ ์ญํ ์์ ์ฑ์ฅํ๋ฉฐ ํ๋ก์ ํธ ์์ฑ์ ๊ธฐ์ฌํ ์ ์์๋ค.์์ฌ์ํต๊ณผ ์ฝ๋ ๋ฆฌ๋ทฐํ๋ฉด ๊ณต์ ์ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ํตํด ๊ฐ์ ๋งก์ ๊ธฐ๋ฅ ๊ตฌํ์ ๋ํด ์ํตํ๋ฉฐ ์๋ก์ด ๊ธฐ์ ์ ๋ฐฐ์ธ ์ ์์๋ค.์๋ก์ ์ฝ๋๋ฅผ ๋ณด๋ฉด์ ๊ตฌํ ์๋๋ฅผ ์ดํดํ๊ณ ์๊ฒฌ์ ๊ตํํ๋ ๊ณผ์ ์ด ๋์์ด ๋ง์ด ๋์๋ค.์ค๊ณ ๋จ๊ณ์ ์ค์์ฑ์ด๊ธฐ ์ค๊ณ ๋จ๊ณ์์ ์์๋๋ ๋ฌธ์ ๋ฅผ ๋ฏธ๋ฆฌ ๊ณ ๋ คํ๊ณ ํ์๋ค๊ณผ์ ํ์๋ฅผ ํตํด ์ํ๋ ๋ฐฉํฅ์ผ๋ก ์ค๊ณ๋ฅผ ์งํํ๋ค.๊ตฌํ ๋จ๊ณ์์์ ์ด๋ ค์์ ์ต์ํํ๊ณ ๋์ ์์ฑ๋๋ฅผ ์ด๋ฃฐ ์ ์์๋ค.์ ๋ณด ๊ณต์ ํ ๋ด์์ ํ์ํ ๊ธฐ์ ์๋ฃ๋ ์ ์ฉํ ํ์ต ๋ฆฌ์์ค๋ฅผ ๊ณต์ ํ๋ฉฐ ์๋ก์ ์ง์์ ํ์ฅํ.. 2024. 12. 27. ๊ธฐ์ด ํ๋ก์ ํธ_Day 5 ์ค๋ ํ ๊ณต๋ถ ๐ง ๊ธฐ์ด ํ๋ก์ ํธ ํ์ด์ง ์กฐํ ๊ธฐ๋ฅ ํ์๋ค๊ณผ ์์ฑ๊ธฐ์ด ํ๋ก์ ํธ ๋ณํฉ ์ถฉ๋ ๊ณผ์ ํด๊ฒฐ๊ธฐ์ด ํ๋ก์ ํธ ์๋ฒ ๋ฐฐํฌ(๊ตฌ๊ฒฝ)์์ค๋ณ ํ์ต๋ฐ ๋ฒ ์ด์ง๋ฐ ์ธ์ ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ๊ธฐ์ด ํ๋ก์ ํธ (๋ด์คํผ๋ ๋ง๋ค๊ธฐ ํ๋ก์ ํธ)ํผ๋ ํ์ด์ง ์กฐํ ๊ธฐ๋ฅ ํ์๋ค๊ณผ ํจ๊ป ์์ฑํ์๋ถ์ด ํ๋ฉด ๊ณต์ ํด์ฃผ์๊ณ ํจ๊ป ํผ๋ ์ ์ฒด๋ฅผ ํ์ด์ง ์กฐํํ ์ ์๋๋ก ์ฝ๋๋ฅผ ์์ฑํ๋ค.์ฒ์ ๋ณด๋ pageable๊ณผ page ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํด์ ํ์ด์ง ์กฐํ๋ฅผ ํ ์ ์์๋ค.GitHub ๋ณํฉ ๊ณผ์ ์์์ ์ถฉ๋ ๋ฐ์๋๊ธ ๊ด๋ จ ๊ธฐ๋ฅ์ 2๋ช ์ด์ ๋ด๋นํ๋๋ฐ ์์ฑ, ์กฐํ / ์์ , ์ญ์ ๋ด๋นํด์ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ค.๊ฐ์ ๊ตฌํ์ ์ฑ๊ณตํ๊ณ GitHub์ Pull Request, fetch, rebaseํ๋ ๊ณผ์ ์์ ๋ณํฉ ์ถฉ๋์ด ๋ฐ์ํ๋ค.In.. 2024. 12. 26. ์ด์ 1 ยทยทยท 4 5 6 7 8 9 10 ยทยทยท 15 ๋ค์