java50 [์ด๋ฒคํธ ์์ฑ๊ณผ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ] CH.3 ์ด๋ฒคํธ ์์ฑ I ์ด๋ฒ ์ฑํฐ๋ฅผ ์ฝ์ผ๋ฉด์, ๊ธฐ์กด์ ๋ด๊ฐ ์์ฑํ๋ ์คํ์ผ์ ๋ชจํธํ ๊ฐ๋ ๋ค์ด ๋ช ํํ ์ ๋ฆฌ ๋๋ ๋๋์ด ๋ค์๋ค.์ด๋ฐ ๊ฐ๋ ์ ๋ช ํํ ์ธ์งํ๋ฉด์, ์์ผ๋ก์ ์ฝ๋๋ฅผ ์์ฑํ ๋๋ฉด kotlin ์คํ์ผ์ ํจํค์ง ์ ๋ฆฌ์ ์ข ๋ ์ง์คํด์ผ ๋๊ฒ ๋ค๋ ์๊ฐ๋ ๋ค์๋ค. ๋ชจ๋ ๋ด์ฉ์ ์ ๋ฆฌํ์ง ์์ ๊ฒ์ด๋ฉฐ, ๊ธฐ์กด์ ์๊ณ ์๋ ๋ด์ฉ ์ด์ธ์ ์๋กญ๊ฒ ๋ฐ์ ๋ค์ธ ๋ด์ฉ๋ง ์ ๋ฆฌํ ๊ฒ์ด๋ค!! ๋๋ฉ์ธ ์ด๋ฒคํธ๋ณ๊ฒฝ์ ๋จ์๋ฅผ ๋น์ฆ๋์ค ์ฒ๋ฆฌ ๊ณผ์ ์์ ๋ฐ์ํ ๊ฒฐ๊ณผ๋ก ์ ์์ด๋ฒคํธ๋ ์ฌ์ฉ์๊ฐ ๋ฌด์์ธ๊ฐ ์ฒ๋ฆฌํ๋๋ก "์์คํ "์ ์์ฒญํ ๊ฒ์์ ์ ์ ์๋ ํํธ์ด๋ฉด์ ๋ณ๊ฒฝ์ด ๋ฐ์ํ ์ด์ ์์ ์ ์ ์๋ค. ์ด๋ฅผ ํ ๋ฉด, PasswordChanged ๋ผ๋ ๊ฐ์ฒด์ ๋ค์ด๋ฐ์ ๋ณด๋ฉด, ๋๋ฉ์ธ์์ ์ด๋ค ์ผ์ด ์ผ์ด๋ฌ๋์ง ์ฆ์ ์ดํด๊ฐ ๊ฐ๋ฅํ๋ค. public class QuantityChan.. 2025. 3. 4. [์ด๋ฒคํธ ์์ฑ๊ณผ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ] CH.2 ๊ฐ์ฒด์งํฅ ์ค๊ณ ์์น ๊ฐ์ฒด ์งํฅ์ ๋๋ช ์ฌ์ธ Java๋ฅผ ์ฌ์ฉํ๋ฉฐ ๊ฐ๋ฐ์๋ค, ์ฆ ์ฐ๋ฆฌ๋ค์ ์ ์ฐจ ์งํฅ์ ์ธ ์ฝ๋๋ฅผ ์์ฑํ ๋๊ฐ ๋ง๋ค.์ฒ์ ๊ฐ์ฒด ์งํฅ์ ๊ณต๋ถํ๋ ๋, ๊ฐ์ฒด๋ผ๋ ๊ฐ๋ ์ด ๊ทธ๋ฆฌ๋ ๋ฏ์ค์๋ค.C์ธ์ด๋ก ์ฝ๋ฉ ์ ๋ฌธ์ ํ๊ธฐ์, ์ ์ฐจ์ ์ธ ์ฝ๋์ ๋ช ๋ น์๋ง ์ต์ํ๊ธฐ ๋๋ฌธ์ด๋ค.๊ฐ์ฒด ์งํฅ ๊ธฐ๋ฒ์ ๊ณต๋ถํ๋ฉด์, ํด๋์ค๋ฅผ ์ฌ๋์ผ๋ก ๋ฐ๋ผ๋ณด๋ ค ๋ ธ๋ ฅํ๊ณ ์ฌ๋ฌ ๊ฐ์ง ์ฑ ๊ณผ ๊ฐ์ฒด ์งํฅ ์ํ ์ฒด์กฐ ์์น ๋ฑ์ ๊ฐ๋ ์ ์์งํ๋,์๊ฐ์ด ์ง๋๋ฉฐ ํจ์ฌ Java์ค๋ฝ๊ฒ ์์ฑํ ์ ์๊ฒ ๋ ๊ฒ ๊ฐ๋ค. ํ์ง๋ง, ์์ง๋ ๊ฐ์ฒด ์ฆ ํด๋์ค๋ฅผ ์ค๊ณํ๊ณ ๋๋๋ ๊ฑด ํ๋ ์ผ์ด๋ผ ์๊ฐํ๋ค.๊ทธ๊ฒ์ ๊ณง ์ค๊ณ์ ๋ํ ์์ญ์ด๋ผ ์๊ฐ์ด ๋๋๋ฐ, ์ต๊ทผ์ LinkedIn ์์ ๋ณธ ํ ๋น ๋์ ๊ธ์ฒ๋ผ ๊ฐ๋ฐ์๋ค์ ์ค๊ณ๋ฅผ ์ง์ ๋ค๋ฃจ๋ฉฐ ๊ณต๋ถํ ์ผ์ด ์๊ธฐ ๋๋ฌธ์ด๋ผ๋ ์๊ฐ๋ ๋ ๋ค. ์ ๋ง ๊ธฐ๋ณธ์ด ๋๋ ๋ด์ฉ์ด์ง๋ง .. 2025. 2. 24. MapStruct! JPA Entity ๋งคํ ๊ฐ ์ฃผ์ํด์ ์ฌ์ฉํ์ ์ต๊ทผ ๋น์ ๊ฒฐ์ ๋ชจ๋๋ฅผ ๊ฐ๋ฐ ๋ฐ ๋ฐฐํฌํ๋ฉฐ, ์ฐธ์ผ๋ก ์ด์ด ์๋ ์์ ์ฝ๋ฉ ๊ด๋ จ ์ด์๋ก ์ธํด ๋ฐ์ดํฐ์ ์ด์์ด ์์๋ค. ๋ฐ๋ก, MapStruct ์ ๋๋ฌธ์ธ๋ฐ.. ํ๋ฒ ๋์ดํด๋ณด๊ฒ ๋ค. (ํญ์ ์๊ฐํ๋ ๊ฑฐ์ง๋ง, ์ฝ๋ ๋จ ํ์ค์ ํ๊ธํจ๊ณผ๊ฐ ์์ฒญ ๋๋ค.) MapStruct ๋?Java Bean ์ ํ ๊ฐ ๋งคํ ๊ตฌํ์ ๋์์ฃผ๋ ์ฝ๋ ์์ฑ๊ธฐ์ปดํ์ผ ํ์์ ์ฝ๋ ์์ฑ ๋ฐ ๋ฐํ์์์ ์์ ์ฑ ๋ณด์ฅ์์ Java code ๋ฅผ ํธ์ถํ๋ฏ๋ก ๋ค๋ฅธ ๋งคํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ณด๋ค ์๋๊ฐ ๋น ๋ฅด๋ค. (Reflection ์ ์ฌ์ฉํ์ง ์๊ธฐ ๋๋ฌธ)Annotation Processor ๋ฅผ ์ด์ฉํ์ฌ ๋งคํ ๋ฐฉ์์ ํธ๋ฆฌํจ์ ์ ๊ณต ์ฌ์ฉ ์์JAVA@Mapper public interface UserMapper { UserMapper INSTANCE = Mappers.g.. 2024. 3. 24. [๊ฐ์๋ฌธ] Effective Java๋ฅผ ์ฝ๊ณ ๋์ ์ฑ ์ ์ฝ์ ์ด์ ์๋ฐ ๊ณต๋ถ๋ฅผ ํ๋ฉด์ ํ๋ฒ ์ฏค ๋์ ํด๋ณด๊ณ ์ถ์๋ ์ฑ ์ค์ ํ๋๊ฐ ๋ฐ๋ก ์ดํํฐ๋ธ ์๋ฐ๋ค. ์๋ ์ด๋ ต๊ธฐ๋ก๋ ์๋ฌธ์ด ๋ฌ๊ณ , ๊ทธ ๋งํผ ์๋ฐ์ ์ ์๋ผ๊ณ ๋ถ๋ฆฌ์ฐ๊ธธ๋ ์๋ฐ ์์ ์ค ๊ฐ์ฅ ๊ฐ์น๊ฐ ๋๊ฒ ๋๊ปด์ก์๋ค. โ ๋ฐฑ์๋ ์ฑ๋ฆฐ์ง ๊ต์ก์ ๋ค์ผ๋ฉฐ ๋ฉํ ๋์ด ์ ๋ง์ ๊ต์ก ์์๊ณผ ์ฑ ๋ค์ ์ถ์ฒํด์ฃผ์ จ๋๋ฐ, ๊ทธ ์ค์ ์ธ์ด ์ค๋ ฅ์ ๊ธฐ์ค์ด ๋๋ ์ฒ๋๊ฐ ์ดํํฐ๋ธ ์๋ฐ๋ผ๊ณ ํ์ จ๋ค. ์ฑ ์ฝ์ ์๊ฐ ์๋ค๋ ํ๊ณ๋ก ๋ฏธ๋ฃจ๊ณ ๋ฏธ๋ฃจ๋ค๊ฐ ๋ฐ๋ก ์ง๋ฅด๊ธฐ๋ก ๊ฒฐ์ฌํ๋ค. โ ์ ์ฑ ์ ์ฌ๊ธฐ์๋ ๊ฐ๊ฒฉ์ด ๋ถ๋ด์ค๋ฝ๊ธฐ ๋๋ฌธ์, ์ด๋ฒ ๊ธฐํ์ ๋น๊ทผ ๋ง์ผ์ ์ด์ฉํด๋ณด๊ธฐ๋ก ํ๋ค. ๋คํํ ๊ฐ๊น์ด ๋๋ค์ ํ๋งค์ ๋ถ์ด ๊ณ์ ์ ๋น๋ฐ๋์ ๊ฐ๋ฅด๋ฉฐ ๊ฑฐ๋ ์ฅ์๋ก ๊ฐ๋ค. ๋ค๊ณ ๊น์ง ํด์ฃผ์๊ณ ๊ฐ๋ฐ์ ์ทจ์ค ์์๊น์ง ํด์ฃผ์ ์ ๋์ ์ฒซ ๋น๊ทผ ๊ฑฐ๋์ ๋งค์ฐ ๋ฐ์คํจ์ ๋๊ผ๊ณ , ์คํํธ๊ฐ ์ข์.. 2022. 10. 26. WebFlux๋ ๋ฌด์์ด๊ณ , ์ ๋์๊ณ , ์ธ์ ์ฐ์ด๋๊ฐ? ์ด์ Cart API ์ฝ๋ ๋ฆฌํฉํฐ๋ง์ ๋ง๋ฌด๋ฆฌํ๊ณ , ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ๊ธฐ ์ํด PR์ ์ฌ๋ ธ๋ค.ํด๋ฆฐ ํ ์ฝ๋๋ก ์์ฑํ๋ ค๊ณ ๋ ธ๋ ฅํ๊ธฐ ์ํด ๋ฆฌ๋ทฐ์ด๋์ด ์ฃผ์ ์๊ฒฌ์ ๋๋๊ณ , ํด๋ฆฐ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ ๊ตฌ๊ธ๋ง์ ํตํด ํ๋ฃจ ์ข ์ผ ๋ชจ๋ํฐ๋ฅผ ๋ ธ๋ ค๋ณด๋ฉฐ ํด๋์ค ๊ฐ ์ฑ ์์ ๋๋์ด ๋ณด์๋ค. ๋นจ๋ฆฌ ์ฑ์ฅํ๊ณ ์ถ๋ค!!๋ฆฌ๋ทฐ๋ฅผ ์๋๊ณ , ์นด์นด์คํ์ด๋ฅผ ์ด์ฉํ ๋๋ฉ์ธ ์ฝ๋๋ค์ ๋ฆฌํฉํฐ๋ง ํ๊ธฐ ์์, ๊ธฐ์กด์ ์ธ๋ถ API์ ํต์ ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ํ ํ๋ฆฟ์ธ RestTemplate์ ๋์ฒด ์ฌ๋ถ์ ๋ํด ๋ ์ฌ๋๋ค.RestTemplate์ deprecated ๋์์ผ๋ฏ๋ก, WebClient์ ์ฌ์ฉ์ ๊ณ ๋ คํด๋ณด๋ผ๋ ์๊ฒฌ์ ๋ฐ์๋ค.WebClient์ ๋ํด ์์๋ณด๋ค๊ฐ ๋๊ธฐ/๋น๋๊ธฐ, ๋ธ๋กํน/๋ ผ๋ธ๋กํน์ด๋ผ๋ ๊ฐ๋ ์ ์ ์์ ๋ํด ๋ค์ ๊ณต๋ถํ๊ฒ ๋์๊ณ , ๋์๊ฐ WebFlux.. 2022. 8. 31. ๊ฐ์ฒด ๊ฐ ๋งคํ์ ์ํ MapStruct ์ฌ์ฉ ๋ฐฉ๋ฒ ๊ธฐ์กด ํ๋ก์ ํธ์์ Dto Entity๋ฅผ ๋งคํํ ๋ model mapper ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์๋ค. ํธํ๊ฒ ์ฌ์ฉํ ์ ์์์ง๋ง ๋ด๋ถ์ ์ผ๋ก ๋ฆฌํ๋ ์ ์ ์ด์ฉํ๊ธฐ ๋๋ฌธ์, ์ฑ๋ฅ ์ ๋ฌธ์ ๊ฐ ์๋ค. ์ด๋ฒ์๋ ๋ง์ด๋ค ์ถ์ฒํ๋ Map Struct๋ฅผ ์ฌ์ฉํด๋ดค๋ค. ์ ์ฉํ๋ฉด์ ์์ํ ๋ฌธ์ ๋ค์ด ์์๋๋ฐ, ๋ด๊ฐ ๊ฒช์ ๋ฌธ์ ์ ๋ค์ ๋ํ ํด๊ฒฐ ๋ฐฉ๋ฒ๋ค์ ์ ๋ฆฌํด๋ณด๊ฒ ๋ค. https://mapstruct.org/documentation/dev/reference/html/ MapStruct 1.5.2.Final Reference Guide If set to true, MapStruct in which MapStruct logs its major decisions. Note, at the moment of writing in Maven, al.. 2022. 8. 29. Spring Security [2] - ์์ธ ์ฒ๋ฆฌ AuthenticationEntryPoint & AccessDeniedHandler ์ํ๋ฆฌํฐ๋ฅผ ๋์ ํ๋ฉฐ ์ธ์ฆ, ์ธ๊ฐ์ ๊ณผ์ ์ ๋ง์ณค๋ค. ์ด์ ์ธ์ฆ ๋ฐ ์ธ๊ฐ ์์ ์์ ๋ฐ์ํ๋ ์์ธ์ ๋ํด์ ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ์ด์ผ ํ๋๋ฐ, ํ ๊ฐ์ง ์๊ฐํด๋ด์ผ ํ๋ ๋ฌธ์ ๊ฐ ์๋ค. ์คํ๋ง ์ํ๋ฆฌํฐ๋ ํํฐ์ ๊ธฐ๋ฐํ ์ฒด์ด๋ ๊ตฌ์กฐ์ด๋ฏ๋ก, ์คํ๋ง ์ปจํ ์ด๋๊น์ง ์์ฒญ์ด ๋๋ฌํ์ง ์๋๋ค. ๋ฐ๋ผ์, @ExceptionHandler๋ฅผ ํตํ ํธํ ์์ธ ์ฒ๋ฆฌ๊ฐ ๋ถ๊ฐํ๋ค. ์ง์ Try - catch๋ก ์ก์์ ์๋ต์ ๋ด๋ ค์ฃผ๋ ๋ฐฉ๋ฒ ๋ฐ์ ์๋ค. ํ์ง๋ง, ์คํ๋ง ์ํ๋ฆฌํฐ๊ฐ ๊ทธ๋ ๊ฒ ํ์ ํ์ง ์๋ค. ์ํ๋ฆฌํฐ ํํฐ ์ฒด์ธ์ ๊ตฌ์กฐ๋ฅผ ๋ณด๋ฉด ๋ง์ง๋ง ์ฆ์์ ์์ธ๋ฅผ ์ฒ๋ฆฌํ๋ ํํฐ๊ฐ ์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. ์ฌ๊ธฐ์ ์ฃผ๋ก ์ฌ์ฉํ๋ AuthenticationEntryPoint์ AccessDeniedHandler๋ฅผ ๊ตฌํํด ์ธ์ฆ ๋ฐ ์ธ๊ฐ ๊ณผ์ ์์ ์ผ์ด๋ ์์ธ์ ๋.. 2022. 8. 21. DB ์์ & jpa ์ธํ ํ๋ก์ ํธ์ ์ ๋ฐ์ ์ธ ๋ฆฌํฉํฐ๋ง์ ๋ค์ ์์ํ๋ฉฐ, ๊ธฐ์กด mybatis๋ฅผ ์ด์ฉํ๋ ๊ฒ์ ๊ทธ๋๋ก ์ฎ๊ฒจ์๋ค. ํ์ง๋ง SQL Mapper๋ฅผ ์ด์ฉํ ์ค๊ณ ํน์ฑ์ ๊ฐ์ฒด ์งํฅ์ ์ธ ์ฝ๋์ ์์ฑ์ด ์ด๋ ค์ ๊ณ , ๋ ๊ธฐ์กด DB ์ค๊ณ์ ๋ฌธ์ ๋ ์๋ค๋ ๊ฒ์ ์๊ฒ ๋์๋ค. DB์ ์ ๋ฐ์ ์ธ ์์ ๊ณผ ๋๋ถ์ด, JPA๋ฅผ ์ด์ฉํด ๋ค์ ๋ฆฌํฉํฐ๋ง์ ํด๋ณด๊ธฐ๋ก ๊ฒฐ์ ์ ๋ด๋ ธ๋ค. ๊ทธ ์์ ๊ณผ์ ๊ณผ JPA ์ธํ ๋ฐฉ๋ฒ์ ๋์ดํด๋ณด๊ฒ ๋ค. https://github.com/GroovyArea/My-ChickenBreast-Shop GitHub - GroovyArea/My-ChickenBreast-Shop: shop api with spring boot shop api with spring boot . Contribute to GroovyArea/My-ChickenB.. 2022. 8. 8. ์คํ๋ง ๋ถํธ ์๋ํ๋ธ(SonarQube) ์ ์ฉ + PostgreSql ๊ฐ์๋ก ์ฝ์ง ์๋ค. ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด ๊ฐ๋ ๊ณผ์ ์์ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ถ๋ถ์ ๊ทนํ ์ผ๋ถ ๊ณผ์ ์์ ๊นจ๋ฌ์๋ค. ์คํ๋ ค ์ฝ๋๋ฅผ ์์ฑํ๋ ์๊ฐ์ด ๋ ๊ทธ๋ฆฝ๋ค. ๋ฆฌํฉํฐ๋ง๊ณผ ๊ธฐ์ ์ ์ฉ ๋ฐ ๋ฒ์ ๋ง์ถค ์์ ์ ์๊ฐ์ ๋ ์๋ ์์ฆ์ด๋ค. ํด๋ฆฐ ํ ์ฝ๋๋ฅผ ์ํด ์์ ๋ฆฌํฉํฐ๋ง์ ํ ์ ์์ง๋ง, ์ ์ ์ฝ๋ ๋ถ์ ๋๊ตฌ๋ ๊ฒ์ด ์๋ค๊ณ ํ๋ค. ๋ํ์ ์ผ๋ก SonarQube๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ค๊ณ ํ๋๋ฐ ์ด๋ฅผ ์ ์ฉํด ๋ณด๋ ์๊ฐ์ ๊ฐ์ก๋ค. ์ ๋ง ์ค๋ ๊ฑธ๋ ธ๊ณ , ์ ํํ์ง ์์ ์ ์์ง๋ง ๋๋ฆ๋๋ก ์ ์ฉํ๋ ๊ณผ์ ์ ์ ๋ฆฌํด๋ณด๊ฒ ๋ค. (ํ๋ฆฐ ๋ถ๋ถ์ด ์์ผ๋ฉด ๋ฌดํํ ๋๊ธ ๊ฐ์ฌํ ๋ฐ๊ฒ ์ต๋๋ค!) ์ด๊ฒ์ด ์๋ฃ๋ ํ AWS lightsales, ec2 ์ ์ฉ ์ฌ๋ถ๋ฅผ ํ๋จํด๋ณด์์ผ๊ฒ ๋ค. ์ ์ ๋ถ์ ๋๊ตฌ ์ฝ๋์ ํ์ง์ ๋ํด ๊ณ ๋ คํ ๋ ํ์์ ์ผ๋ก ์ฌ์ฉํ๋ ๋๊ตฌ์ด๋ค. ์ง์์ ์ธ .. 2022. 7. 5. 2022.06.22 ใLv.2 N-Queenใ ์ด๋ฒ ์ฃผ๋ ์ฝ๋ฉ ํ ์คํธ ์ฐ์ต์ ๋ ๋ฐ์ฐจ๋ฅผ ๊ฐํด๋ณผ ๊ณํ์ ์งฐ๋ค. ๋ค์ ์ฃผ์ ๋ชจ์ ํ ์คํธ๋ฅผ ๋ณผ ๊ณํ์ด๋ฏ๋ก ๋น์ค์ ์ข ๋ ๋ฌ๋ด์ผ๊ฒ ๋ค. ์ด๋ฒ ๊ธฐํ์ ์๋ฃ๊ตฌ์กฐ ํ๋ฒ ๋ ์ ๋ฆฌํด๋ณผ ๊ณํ๋ ๊ตฌ์ํ๋ค. https://programmers.co.kr/learn/courses/30/lessons/12952 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - N-Queen ๊ฐ๋ก, ์ธ๋ก ๊ธธ์ด๊ฐ n์ธ ์ ์ฌ๊ฐํ์ผ๋ก๋ ์ฒด์คํ์ด ์์ต๋๋ค. ์ฒด์คํ ์์ n๊ฐ์ ํธ์ด ์๋ก๋ฅผ ๊ณต๊ฒฉํ ์ ์๋๋ก ๋ฐฐ์นํ๊ณ ์ถ์ต๋๋ค. ์๋ฅผ ๋ค์ด์ n์ด 4์ธ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด ํธ์ ๋ฐฐ์นํ๋ฉด n๊ฐ์ ํธ์ programmers.co.kr ๋ฌธ์ ์ค๋ช ๊ฐ๋ก, ์ธ๋ก ๊ธธ์ด๊ฐ n์ธ ์ ์ฌ๊ฐํ์ผ๋ก๋ ์ฒด์คํ์ด ์์ต๋๋ค. ์ฒด์คํ ์์ n๊ฐ์ ํธ์ด ์๋ก๋ฅผ ๊ณต๊ฒฉํ ์ ์๋๋ก ๋ฐฐ์นํ๊ณ ์ถ์ต๋๋ค. ์๋ฅผ ๋ค์ด์ n์ด 4์ธ๊ฒฝ.. 2022. 6. 22. 2022.06.14 ใLv.2 ๋ฉ์ฉกํ ์ฌ๊ฐํใ ๋ฌธ์ ์ค๋ช ๊ฐ๋ก๊ธธ์ด๊ฐ Wcm, ์ธ๋ก ๊ธธ์ด๊ฐ Hcm์ธ ์ง์ฌ๊ฐํ ์ข ์ด๊ฐ ์์ต๋๋ค. ์ข ์ด์๋ ๊ฐ๋ก, ์ธ๋ก ๋ฐฉํฅ๊ณผ ํํํ๊ฒ ๊ฒฉ์ ํํ๋ก ์ ์ด ๊ทธ์ด์ ธ ์์ผ๋ฉฐ, ๋ชจ๋ ๊ฒฉ์ ์นธ์ 1cm x 1cm ํฌ๊ธฐ์ ๋๋ค. ์ด ์ข ์ด๋ฅผ ๊ฒฉ์ ์ ์ ๋ฐ๋ผ 1cm × 1cm์ ์ ์ฌ๊ฐํ์ผ๋ก ์๋ผ ์ฌ์ฉํ ์์ ์ด์๋๋ฐ, ๋๊ตฐ๊ฐ๊ฐ ์ด ์ข ์ด๋ฅผ ๋๊ฐ์ ๊ผญ์ง์ 2๊ฐ๋ฅผ ์๋ ๋ฐฉํฅ์ผ๋ก ์๋ผ ๋์์ต๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ํ์ฌ ์ง์ฌ๊ฐํ ์ข ์ด๋ ํฌ๊ธฐ๊ฐ ๊ฐ์ ์ง๊ฐ์ผ๊ฐํ 2๊ฐ๋ก ๋๋์ด์ง ์ํ์ ๋๋ค. ์๋ก์ด ์ข ์ด๋ฅผ ๊ตฌํ ์ ์๋ ์ํ์ด๊ธฐ ๋๋ฌธ์, ์ด ์ข ์ด์์ ์๋ ์ข ์ด์ ๊ฐ๋ก, ์ธ๋ก ๋ฐฉํฅ๊ณผ ํํํ๊ฒ 1cm × 1cm๋ก ์๋ผ ์ฌ์ฉํ ์ ์๋ ๋งํผ๋ง ์ฌ์ฉํ๊ธฐ๋ก ํ์์ต๋๋ค. ๊ฐ๋ก์ ๊ธธ์ด W์ ์ธ๋ก์ ๊ธธ์ด H๊ฐ ์ฃผ์ด์ง ๋, ์ฌ์ฉํ ์ ์๋ ์ ์ฌ๊ฐํ์ ๊ฐ์๋ฅผ ๊ตฌํ๋ solutio.. 2022. 6. 14. 2022.05.11 ใSHA-256 + Salt & ์ธ์ฆใ ์ธ์ฆ ๊ด๋ จํด์ ์ฌ์ค ์คํ๋ง ์ํ๋ฆฌํฐ๋ฅผ ์ฌ์ฉํด๋ ๊ด์ฐฎ์ง๋ง ์์ฐจ์ ์ผ๋ก ๊ฐ๊ธฐ ์ํด์ ์์ํ๊ฒ SHA-256 ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํด ๋น๋ฐ๋ฒํธ ์ํธํ์ ๋ก๊ทธ์ธ์ ์์์ ์ผ๋ก ๊ตฌํํ ํ๋ฃจ๋ค.. ๊ฑฐ์ง 12์๊ฐ์ ์ฝ์งํ ๊ฒ ๊ฐ๋ค. ์ํธํ ์๊ณ ๋ฆฌ์ฆ ์ด์ฉ๊ณผ, Mybatis ๋งคํ ๋ฌธ์ ๋ ์๊ณ , ModelMapper๋ฅผ ์ฌ์ฉํด DTO VO ๋งคํ์ด ๊ณ์ ์๋์ด์ ํ๋ฃจ ์ข ์ผ ๋ฉํธ์ด ๋๊ฐ์๋ค. ๋ค๋ฅธ ๊ณต๋ถ๋ ํ ๊ฒ ๋๋ฌด ๋ง์๋ฐ ํ๋ก์ ํธ๋ง ๋น์ค์ด ๋ง์๋ ํ๋ฃจ๋ผ ๋๋ฌด ์์ฝ๋ค. ํ์ง๋ง ์ฝ์งํ ๋งํผ ๋ด ๊ฒ์ด ๋์์ผ๋ฉด ์ข๊ฒ ๋ค. ์ค๋์ ํ๋ฃจ์ข ์ผ ์ฝ์งํ ๋ด์ฉ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฒ ์ ๋ฆฌ๋ฅผ ํด๋ณด๋ ค๊ณ ํ๋ค. ์ฌ๋ด์ผ๋ก ๋ค์ด์ดํธ์ค์ธ๋ฐ ์์ ์์ฃผํ๋ ๊ณต๋ถ ํ๊ฒฝ์์ ์คํธ๋ฐ ๋ฏธ๋ ๋ฐ์ดํธ๋ฅผ ์ ๊ณตํด์ฃผ๋๋ฐ ์ด๊ฑฐ ์ง์ง ๋๋ฌด ๋ง์๋ค.. ์์ ์ ์ง์ง ๋จ ๊ฑฐ ์ ์ฐธ์๋๋ฐ ๋์๋ .. 2022. 5. 11. 2022.05.10 ใRest Ful Api & DTO,VO mapping & Mysql Index & ์์ํใ ํ๋ก์ ํธ๋ฅผ ์งํ ์ค์ ์์ ์ฌํญ์ด ๋๋ฌด๋ ๋ง๋ค๋ ๊ฒ์ ์๊ฒ ๋์๋ค. ์์ ์ ํ์์์ ํ๋ก์ ํธ๋ฅผ ํ ๋๋ ์ด๋ป๊ฒ ๋ง๋ค๋ ๊ธฐํ์ด ์ ํด์ ธ ์์๊ธฐ ๋๋ฌธ์ ์์ฑ๋๊ฐ ์ฐ์ ์ด์๊ณ , ์ ์ง๋ณด์์ ๋ํ ํ๋ก๊ทธ๋๋ฐ์ ์ ๊ฒฝ์ ์ฐ์ง ์์์๋ค. ํ์ง๋ง ์ค์ ๋ก ์ ๋๋ก ๋ ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค ๋ณด๋ ์์ ๋ฒ๋ฆ์ด ๋์ค๊ฒ ๋์๊ณ , ์ด๋ฒ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ์ ๊น์ ๋ฆฌํฉํฐ๋ง์ ๋น ๋ฅด๊ฒ ํ๋ฉฐ ์ ๋ฆฌ๋ฅผ ํด๋ณผ ์๊ฐ์ด๋ค. RestFul Api ์ return ๊ฐ 1. ๋๋๋ก ์ฒด์ด๋ ํ๋ ๋ฐฉ์์ ์ฌ์ฉ 2. response์ ํด๋น๋๋ ํค๋ ๋ฉ์์ง(์ํ ์ฝ๋, ๋ฉ์์ง ๋ฑ๋ฑ), ๋ฐ๋ ๊ฐ์ ๋ค ๋ฃ๋๋ก ๋ ธ๋ ฅํ์ DTO, VO ๊ฐ์ ๋งคํ ํ์ฌ Mybatis๋ฅผ ์ฌ์ฉ์ค์ด๋ฏ๋ก ํ ์ด๋ธ ์์ฒด์ Entity๋ VO service mapper ๊ณ์ธต ์ด๋ ์ VO๋ฅผ ์ด์ฉํด์ผ ํจ .. 2022. 5. 10. 2022.05.09 ใํด์ Lv.2ใ ์์ ๋งค์ผ๋งค์ผ ์ฝํ ๋ฅผ ์ค๋นํ๋ฉฐ ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์ ๋ฅผ ํ๊ณ ์๋ค. ์ฒ์์ ์์ ํ ๋งํ์ง๋ง ๊ทธ๋๋ ์ด์ ์ด๋ ์ ๋ ํ์ด๊ฐ ๋ ์ค๋ฅด๊ธด ํ๋ค. ํ ๊ฐ์ง ์์ฌ์ด ์ ์ ์๊ฐ๋ณด๋ค ํด๋์ค๋ง๋ค ๋ค์ํ ๋ฉ์๋๋ฅผ ๊ฐ์ง๊ณ ์๊ณ ์ด๋ฅผ ์ ์๊ณ ํ์ฉํด์ผ ํ๋ค๋ ์ ์ด๋ค. ์ ์ผ ๋ง์ด ๋์ค๋ ์ ํ์ธ ํด์ ๋ฌธ์ ๋ฅผ ๋ง์ฃผํ๊ณ ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด ํ์ฉํ ๋ฉ์๋๋ฅผ ๊ฒ์ํด์ ์ด๋ฅผ ํ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํ์์ง๋ง ํ๋ฒ ์ ๋ฆฌํด๋ณผ ๋งํ ๊ฐ์น๊ฐ ์๋ค๊ณ ์๊ฐ์ด ๋ค์ด์ ์ด๋ ๊ฒ ์ ๋ฆฌํ๊ฒ ๋์๋ค. ๋ฌธ์ ์ค๋ช ์์ฅ์ด๋ผ๋ ๋ฌธ์ ์ธ๋ฐ, ์ท์ ์ข ๋ฅ์ ์ท์ ์ด๋ฆ์ผ๋ก ์ด๋ฃจ์ด์ง 2์ฐจ์ ๋ฐฐ์ด์ ๊ฐ์ง๊ณ ๊ทธ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. ๋งค์ผ ์ท์ ๋ค๋ฅด๊ฒ ์ ์ด์ผ ํ๊ณ , ํ๋ฃจ์ ์ท 1๊ฐ๋ ๋ฌด์กฐ๊ฑด ์ ๋ ์กฐ๊ฑด์ด๋ค. ํด์๋ฅผ ์ด์ฉํด ํ๋๋ค. ํ์ด public int solution(String[][.. 2022. 5. 9. 2022.04.28 ใThymeleaf ์ค์ ใ โถ ํํธ 1 (10์30๋ถ ~ 5์30๋ถ) 1. ๋ก์งํ ๋ง์ฐ์ค ๊ตฌ๋งค 2. ์๊ณ ๋ฆฌ์ฆ ์ ๋ ฌ Level2 3. mysql CH.9 4. ์ํค ์์ 5. ์คํ๋ง๋ถํธ ํ๋ก์ ํธ ์งํ โถ ํํธ 2 (9์30๋ถ ~ 12์) 1. ์คํ๋ง๋ถํธ ํ๋ก์ ํธ ์งํ => ์๋ฐ ๊ฐ๋ค ์์ ๊ฒฝ๋ก ์ข ์ ๋ณด๊ณ html๋ ์ข ๋ฃ๊ณ ํ์ โถ ๋ฌธ์ 1. view ๋์์ธ ๋ฌธ์ ๋ฌธ์ ์ : Thymeleaf ์์ง์ ์ฌ์ฉํ๋๋ฐ ์ฌ๊ธฐ๋ jsp์์ ์ฌ์ฉํ๋ tiles๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๋ค. ํด๊ฒฐ : - Thymeleaf๊ฐ ์ ๊ณตํ๋ layout ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํด์ ์ ์ฉ ๊ฐ๋ฅํ๋ค. - Thymeleaf ๊ด๋ จ resolver properties ํ์ผ ์ ์ํจ 2. resources ํด๋ ์ํคํ ์ณ ๊ด๋ จ ๋ฌธ์ ์ : ์คํ๋ง๋ถํธ์์ view ๊ด๋ จ ์ํคํ ์ณ ์ค๊ณ๊ฐ ์ฒ์์ด.. 2022. 4. 28. ์ด์ 1 2 3 4 ๋ค์ ๋ฐ์ํ