์ ์ฒด ๊ธ78 [๊ฒฐํผ์ค๋น] ์จ๋ฉ๋ฐด๋ ๐ค์ํฌ๋ ๋ ์ ์ค ์๋น๋ด์์ ๐ค ๊ณ์ฝ ํ๊ธฐ ์๋ ํ์ธ์~!๋ด๋ 2์ ์์, ์ฌํด 9์ ์จ๋ฉ์ดฌ์์ ์๋๊ณ ์๋ ์๋น์ ๋ถ์ ๋๋ค.์จ๋ฉ์ดฌ์๋ ์จ๋ฉ๋ฐด๋๋ก ์ฌ์ง์ ์ฐ๊ณ ์ถ์ด์์ผ์ฐ ๋ง์ถ๋ฌ ๊ฐ์ด์~!โ๊น๋ฅด๋ ์, ๋ถ๊ฐ๋ฆฌ ๋ฑ ๋ช ํ ๋ธ๋๋๋ ์๊ฐํด๋ดค๊ณ ์๋ฌผ์ต์์ ํ ๊น๋ ํ์ง๋ง,๋ช ํ ๋ธ๋๋๋ ๋๋ฌด ๋น์ธ๊ณ ๋ชจ๋๊ฐ ๊ฐ์ ๋์์ธ์ด๊ณ ์๋ฌผ์ต์ ๋ ๋๋ฌด ํ๋ คํ ๋๋์ด ๊ฐํ ๊ฒ ๊ฐ์์๊ณ ๋ฏผํ๋ ์ฐฐ๋์ ์ํฌ๋ ๋๋ผ๋ ๊ณณ์ ์๊ฒ๋์์ด์~!โ์ฐ์ ๊ฐ๊ฒฉ๋๊ฐ ์ ํฌ ์์ฐ์ ์๋ง์๊ณ ๋์์ธ๋ ๋ค์ํ๊ฒ ๋ง์์ ๋ฟ๋๋ฌ์ฌ์ง์ด ์์/์ฌ์ด์ฆ/๋๊ป/๋์์ธ ๋ฑ ์ฌ๋ฌ๋ฐฉ๋ฉด์ผ๋ก ์ปค์คํ ์ด ๊ฐ๋ฅํ๋ค๋ ์ ์์์ํฌ๋ ๋ ์ ์ค ์๋น๋ด์์ ์ผ๋ก ๋ฐ๋ก ์งํํ์ต๋๋ค!!โ์จ๋ฉ๋ฐด๋๋ ์ค๋ฒ!๋ผ๋ ๋ก๋ง์ ์ค๋ฒ์์ฃผ๋ก ๊ปด๋ดค์ง๋ง์๋ ์ธ์์!! ์์ด์ธ๋ฆฌ๋๋ผ๊ณ ์!!โ์๋ดํด์ฃผ์ ๋งค๋์ ๋์ ์ถ์ฒ์ผ๋ก์ํฌ๋ ๋๋ง์ ์์์ธ ๊ณจ๋ ๋ฒ ์ด์ง ์์์ ๊ปด๋ดค๋๋ฐ์์ ์ฐฐ๋ก์ด.. 2024. 6. 23. [๊ฒฐํผ์ค๋น] ์์ดํฐ์ค๋ ๐ ์ผ์จ์ด์ฆ ์ค๋ ๐ ๊ณ์ฝํ๊ธฐ ๋ณธ์ ๋ ์์ดํฐ ์ค๋ ์ ์ถ๊ฐ๋ก ํ ์ง ๋ง์ง ์ค๋ ๊ณ ๋ฏผ ๋์'์ผ์จ์ด์ฆ ์ค๋ (always snap)' ์ ์ฒด๋ก ๊ณ์ฝ์ ํ์ด์! โhttps://www.instagram.com/always_snap_?igsh=MWV3dmQ5YzA4eTY0cA%3D%3D ๋ง์ ์์ดํฐ์ค๋ ์ ์ฒด ์ค์์ ์ผ์จ์ด์ฆ๋ฅผ ์ ํํ๊ฒ ๋ ์ด์ ๋์๋ 3๊ฐ์ง๊ฐ ๊ฐ์ฅ ํฝ๋๋ค~!์ ์ ์ฌ์ ์ ๋ฑ๋ก ํ ์ ์ฒด๋ก ์ ๋ขฐ์ฑ์ด ๋๋ค.๊ฐ์ฑ๋น ์๋ ์ ์ฒด๋ก 10๋ง ์๋๋ก ๊ฐ๋ฅํ๋ค.์ ์ฒด์ ์ธ ๋ณธ์ ๋ถ์๊ธฐ๋ฅผ ๋ด์ ์ค๋ค. ์ฒ์์๋ ๊ฐ๊ฒฉ์ด ์ ๋ ดํด์ ๋๊ธธ์ด ๊ฐ๋๋ฐ,์ธ์คํ๋ฅผ ๋๋ฌ๋ณด๋ฉด์์์ฐ์ค๋ฌ์ด ๊ตฌ๋์ ์ ๋ช ํ ์๊ฐ์ด ๋๋ฌด ๋ง์์ ๋ค์์ด์ใ ใ ๊ทธ๋์ ๋ฐ๋ก ์นด์นด์คํก์ผ๋ก ๋ฐ๋ก ๋ฌธ์๋ฅผ ๋๋ ธ์ด์ใ ใ 2024๋ ์ ์๊ธด ์ ์ ์ ์ฒด์ด์ง๋ง๊ฝค ์ธ๊ธฐ ์์ด์ ์ด๋ฏธ ๋ง๊ฐ๋์ ๊น๋ด ๊ฑฑ์ ํ๋๋ฐ๋คํํ ์์ฝ ์ฑ.. 2024. 6. 23. [Spring] Spring boot ๋์ ์๋ฆฌ Spring boot๋ก ๊ฐ๋ฐ์ ํ์ง ๋ฒ์จ 3๋ ์ด ๋๋ค.ํ์ง๋ง Spring boot๋ Request์ ๋ฐ์์ ๋ ์ด๋ค ๊ณผ์ ์ ๊ฑฐ์ณ Responseํ๋์ง ๊ธฐ๋ณธ์ ์ธ ๋์ ์๋ฆฌ๋ฅผ ๋ชจ๋ฅธ๋ค.๊ทธ๋์ ํ๋ฒ ๊ฐ๋ตํ ์์๋ณด์๋ค!๋จผ์ ์์์ผํ๋ ์ง์์ด ์๋ค.1. ์ฌ์ ์ง์๋๋ณด๊ธฐweb.xmlContextLoaderListerServlet & Servlet ContainerFrontControllerRequestDispatcherDispatcherServletApplicationContextMessageConverterViewResolverweb.xmlSpring framework ๋์์ ์ํ ๋ชจ๋ ์ด๊ธฐ ์ค์ ๋ค์ด ๋ค์ด์๋ค. ๋ํ์ ์ธ ์ค์ ์ ์๋์ ๊ฐ๋ค.ServletContext์ ์ด๊ธฐ ํ๋ผ๋ฏธํฐSession ์ ํจ์๊ฐ ์ ๋ณดMi.. 2024. 4. 26. [Spring] ์ ์ด์ ์ญ์ - IoC(Inversion of Control) IoC๋? IoC : Inversion of Control (์ ์ด์ ์ญ์ ) IoC๋ ์์กด์ฑ ์ฃผ์ (DI)๋ก ์๋ ค์ ธ์๋ค. Spring์ Bean์ ์์ฑํ๊ณ ์์กด์ฑ์ ๊ด๋ฆฌํ๊ณ , ๊ฐ๋ฐ์ ๋์ ๋ฉ๋ชจ๋ฆฌ์์ ๊ด๋ฆฌํ๋ค. ๊ฐ๋ฐ์๊ฐ ๊ฐ๋ฐ์๋ง ๋ชฐ๋ ํ ์ ์๋๋ก ํ๋ ์์ํฌ๊ฐ ๋์ ๊ด๋ฆฌํด์ฃผ๋ ๊ฒ์ด๋ค. ๊ฐ๋จํ๊ฒ ์์ฝํ์๋ฉด, Spring์ด ๊ด๋ฆฌํ๋ ๊ฐ์ฒด๋ฅผ ๊ฐ์ ธ์ ์ฌ์ฉํ๋ ๊ฒ์ ๋งํ๋ค. 1. IoC Container๋? Spring์๋ IoC๋ฅผ ๋ด๋นํ๋ ์ปจํ ์ด๋๊ฐ ์๋ค. Spring์ด ๊ด๋ฆฌํ๋ Bean ์์ฑ ๋ฐ ์ค์ ๋ฐฉ๋ฒ ๋ฑ์ ๋ค๋ฃจ๋ Configuration Metadata๊ฐ ์กด์ฌํ๋ค. IoC Container๋ฅผ Spring Container๋ผ๊ณ ๋ ํ๋ค. Spring IoC Container์์ ๊ด๋ฆฌ๋๋ ๊ฐ์ฒด๋ฅผ Bean์ด๋ผ๊ณ ํ๋ค.. 2024. 3. 10. Spring๊ณผ Spring Boot๋? Java ๊ฐ๋ฐ์๊ฐ ํจ๊ป ๊ณต๋ถํด์ผ ํ๋ ํ๋ ์์ํฌ๋ Spring๊ณผ Spring Boot์ด๋ค. ๊ฐ์ ๊ฒ ๊ฐ์ผ๋ฉด์๋ ์๋ก ๋ค๋ฅธ ๋ ํ๋ ์์ํฌ์ ๋ํด์ ์์๋ณธ๋ค. ๊ฒฐ๋ก ๋ถํฐ ์ ์ด๋ณด์๋ฉด Spring์ ์ํฐํ๋ผ์ด์ฆ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ ๊ฐ๋ฐ ํ๊ฒฝ(ํ)์ ์ ๊ณตํด ์ฃผ๋ ๊ฒ์ด๊ณ Spring Boot๋ Spring์ ๋จ์ ์ ๋ณด์ํด ๊ฐ๋ฐ์๊ฐ ๋น์ฆ๋์ค ๋ก์ง ๊ฐ๋ฐ์๋ง ์ง์คํ ์ ์๊ฒ ํด์ฃผ๋ ๊ฑฐ๋ค. ์ฌ๊ธฐ์ ์ ์ ์๋ ๊ฒ์ Spring Boot์๋ Spring์ด ํฌํจ๋์ด ์๋ค๋ ๊ฒ์ด๋ค. 1. Spring์ ๋ฑ์ฅ ์ํํธ์จ์ด ๋ถ์ผ๊ฐ ๋ฐ์ ํ๋ฉด์ ์ํธ๋ผ์ด์ฆ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ ๋ณต์กํด์ก๊ณ ๊ฐ๋ฐ์๋ค์ ์ ์ ์ฌ์ฉ์์ ์์ฒญ์ ๋์์ ์ฒ๋ฆฌํด์ผ ํ๋ ๋ฑ์ ์๋น์ค ์์ ์ฑ, ๋ณด์, ์ฑ๋ฅ ๋ฑ์ ๊ณ ๋ คํ๊ฒ ๋์๋ค. ์ ์ฐจ ๊ธฐ๋ฅ ๊ฐ๋ฐ์๋ง ์ง์คํ๊ธฐ ํ๋ค์ด์ก๊ณ ์ด๋.. 2024. 3. 10. [Spring boot] warning: unknown enum constant When.MAYBE ๋๋ณด๊ธฐ ํ๊ฒฝ spring boot v3 gradle java 17 ๐ซ ํ์ ์ด๋๋ ๋ถํฐ ๋น๋ํ ๋ ์๋ ๊ฒฝ๊ณ ๋ฉ์์ง๊ฐ ๊ณ์ ์ฌ๋ผ์๋ค.. ์๋ฌ๋ ์๋์ง๋ง ๋งค์ฐ ๊ฑฐ์ฌ๋ฆฐ๋ค. warning: unknown enum constant When.MAYBE reason: class file for javax.annotation.meta.When not found โ๏ธ ์์ธ @Nullable ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํ๋ฉด์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ก ์ด ๊ฒฝ๊ณ ๋ javax.annotation.meta.When ํ๋ก์ ํธ ๋ฐํ์์์ ์ด๊ฑฐํ์ ์ฌ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ํ๋ค๊ณ ํ๋ค. ๐ ๏ธ ํด๊ฒฐ ๋ฐฉ์ ์ด๋ฅผ ์์ ํ๋ ค๋ฉด Google์ JSR305๋ฅผ ์ถ๊ฐํ๋ฉด ๋๋ค. build.gradle์ ์์กด์ฑ ์ถ๊ฐ dependencies { implementation.. 2023. 10. 13. [PostgresSQL] ์ธ๋ถ์ ์ ํ์ฉ (Linux CentOS7) 1. ์ฌ์ ์์ ๋ฐ ํ์ธ PostgresSQL ์ค์น PGDATA ๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก ํ์ธ CentOS default : /var/lib/pgsql/{version}/data 2. postgresql.conf ์ค์ postgresql.conf์์ listen_addresses='localhost' ์ฃผ์ ์ ๊ฑฐ ํ '*'๋ก ๊ฐ์ ๋ฐ๊พธ๊ณ port=5432 ๋ผ์ธ ์ฃผ์ํด์ ํ๋ค. vi /var/lib/pgsql/{version}/data/postgresql.conf listen_address='*' port=5432 3. pg_hba.conf ์ค์ ์๋ ๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ pg_hba.conf์ ์ ์ ํ์ฉ ๊ท์น์ ์ถ๊ฐํ๋ค. echo "host all all 0.0.0.0/0 md5" >> /var/lib/pgsql/{ve.. 2023. 9. 27. [Spring boot] Generating equals/hashCode implementation but without a call to superclass โน๏ธ Development Environment Spring boot v3.0.1 Gradle v7.6 Java v17 Lombok ๐ซ ํ์ Spring boot gradle build์ ์๋ warning์ ๋งค ํ๋ก์ ํธ๋ง๋ค ์์ฃผ ๋ง๋๋ค. warning์ด๊ธฐ์ ๋น๋์ ๋ฌธ์ ๋ ์์ง๋ง, ํด์ํด์ฃผ๋ ๊ฒ์ด ์ข๋ค. ๊ณ์ ๊น๋จน๊ธฐ ๋๋ฌธ์ ๊ธฐ๋กํ๋ค.. warning: Generating equals/hashCode implementation but without a call to superclass, even though this class does not extend java.lang.Object. If this is intentional, add '@EqualsAndHashCode(callSuper=false)' t.. 2023. 9. 26. [Keycloak] Keycloak์ด๋? & ๊ฐ๋จํ ์ค์น ๋ฐ ํ ์คํธ ๊ณต์ ์ฌ์ดํธ : https://www.keycloak.org/ 1๏ธโฃ (What) Keycloak์ด๋? Keycloak์ RedHat ์ฐํ IAM ์๋ฃจ์ ์ด๋ค. โ IAM ์๋ฃจ์ (Identity and ACcess Management Soluthion) ํ์๊ฐ์ , ๋ก๊ทธ์ธ ์ธ์ฆ, ์ธ๊ฐ, ๋ก๊ทธ์ธ ์ด๋ ฅ๊ด๋ฆฌ, ํ์ ์ ๋ณด ์์ , ํํด ๋ฑ.. ์ธ์ฆ/์ธ๊ฐ ๊ธฐ๋ฅ๋ค์ด ๋ฏธ๋ฆฌ ๋ค ๊ตฌํ๋์ด ์๋ ์๋ฃจ์ ์ ๋งํ๋ค. ๋ํ์ ์ผ๋ก Keycloak, AWS Cognito๊ฐ์ ์๋น์ค๊ฐ ์๋ค. 1. ํน์ง SSO (Single-sign-on)๋ฅผ ์ ๊ณตํ๋ค. Restful API ์ง์ ๋ฐ Custom API๋ฅผ ์ถ๊ฐํ ์ ์๋ค. Java๋ก ๊ฐ๋ฐ๋ ์คํ์์ค์ด๋ค. https://github.com/keycloak/keycloak\ 2. ์ ๊ณต ๊ธฐ๋ฅ .. 2023. 9. 11. ์ด์ 1 2 3 4 ยทยทยท 9 ๋ค์