Hello! 🖐
✏ Web Backend Developer happyhsryu
๊ณต๋ถํ ๊ฒ์ ์ ๋ฆฌํ๊ณ ๊ณต์ ํ๋ ๊ธฐ์ ๋ธ๋ก๊ทธ์ ๋๋ค.
๋ด์ฉ์ด ๋ถ์กฑํ๊ฑฐ๋ ์๋ชป๋ ๋ถ๋ถ์ด ์์ ์ ์์ผ๋ ๋๋ฅธ ์ํด ๋ถํ๋๋ฆฝ๋๋ค.
Java ํ๋ก์ ํธ๋ฅผ ์ปดํ์ผํ๋ ค๋ฉด jdk๊ฐ ํ์ํ๋ค.์ปดํจํฐ๊ฐ java๋ฅผ ์ปดํ์ผ ํ๊ธฐ ์ํ javac๋ฅผ ์ฐพ์ ์ ์๋๋ก ํ๊ฒฝ๋ณ์๋ฅผ ์ค์ ํด์ jdk์ ์์น๋ฅผ ์ง์ ํด์ค์ผ ํ๋ค.์ปดํจํฐํํ jdk ์์น๋ฅผ ์๋ ค์ฃผ๋ ๊ณผ์ ..๊ฐ๋จํ์ง๋ง ์์๋๋ฉด ์์ผ๋ก ์์ฃผ ์ธ ๊ฒ ๊ฐ์์ ๊ธฐ๋กํด ๋๋ค.์ด ๊ธ์ 2024๋ 10์ 14์ผ, Windows 11 ๋ฒ์ ์ ์ฌ์ฉํ๋ ํ๊ฒฝ์์ ์์ฑํ๋ค.0. jdk ์ค์น์ฐ์ jdk๋ฅผ ์ค์นํด์ผ ํ๋ค.์ฌ๊ธฐ์ C:\dev_files\jdk\openjdk-1.8์ ์์นํ๋ค๋ ๊ฒ์ ๊ฐ์ ํ๊ณ ์ค๋ช ํ๋ค.1. ์์คํ ํ๊ฒฝ๋ณ์ย ๊ฒ์ํด์ "์์คํ ํ๊ฒฝ๋ณ์ ํธ์ง"์ผ๋ก ๋ค์ด๊ฐ๋ ๋๊ณ ,์ ์ดํ - ์์คํ - ๊ณ ๊ธ ์์คํ ์ค์ (์์คํ ์์ฑ) - ํ๊ฒฝ๋ณ์๋ก ๋ค์ด๊ฐ๋ ๋๋ค.2-1. ์์คํ ๋ณ์ ์ค์ ์ค์ํ ๊ฒ์ jdk ์์น์ด๋ค.๊ทธ๋ฐ๋ฐ..
๊ฐ๋ฐ ๊ณผ์ ์ค ์ ํ๋ฒํธ ์ํธํ, ๋น๋ฐ๋ฒํธ ์ํธํ๊ฐ ํ์ํด์ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ์ ํํด์ผ ํ๋ค. RSA์ AES๋ ๋ณตํธํ๊ฐ ํ์ํ ๊ฒฝ์ฐ ์ฌ์ฉํ๊ณ , SHA๋ ๋ณตํธํ๊ฐ ํ์ ์๋ ๊ฒฝ์ฐ(๋น๋ฐ๋ฒํธ)์ ์ฌ์ฉํ๋ค.๋ค๋ฅธ ๊ธ๋ค์ ์ฐพ์๋ณด๋ ๋๋ถ๋ถ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ๋ํด ์ ๋ฆฌํ๋ค. ๊ทธ๋ฌ๋ ์ด ๊ธ์์๋ ์ํ์ ์ธ ๋ถ๋ถ์ ๊ฐ์ํํ๊ณ Web ๊ฐ๋ฐ์์ ๊ด์ ์์ ํ์ํ ๋ถ๋ถ์ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค.RSA / SHA / AES ๋ฐฉ์์ ์ฐจ์ด์ ์ฐ์ RSA์ AES๋ ์๋ฐฉํฅ ์ํธํ ๋ฐฉ์์ด๊ณ , SHA๋ ๋จ๋ฐฉํฅ ์ํธํ ๋ฐฉ์์ด๋ค.ย ์ด ์ฐจ์ด๋ ๋ณตํธํ๊ฐ ๊ฐ๋ฅํ์ง ์ฌ๋ถ์ ๋ฐ๋ผ ๋๋๋ค. ๋ณตํธํ๊ฐ ๊ฐ๋ฅํ๋ฉด ์๋ฐฉํฅ์ด๊ณ , ๋ณตํธํ๊ฐ ๋ถ๊ฐํ๋ฉด ๋จ๋ฐฉํฅ์ด๋ค.์ ํ๋ฒํธ์ ๊ฒฝ์ฐ ์ํธํํด์ ์ ์ฅํ๋ค๊ฐ, ํ์ํ ๊ฒฝ์ฐ ๋ณตํธํํด์ ์ฌ์ฉํด์ผํ๋ค.ย ๊ทธ๋ฌ๋ ๋น๋ฐ๋ฒํธ์ ๊ฒฝ์ฐ์๋ ๋ณตํธํ๊ฐ ํ..
ํ ์คํธ ๊ฒฐ๊ณผ ์ด Tool์ย ๋์ ์ผ๋ก ํ์ด์ง๋ฅผ ์ด๋ํ๋ฉฐ ๋์ํ๋๊ฒ ์๋,ย ์ฒ์ ์ ๋ ฅํ ํ์ด์ง ํ๋์ ๋ํ ์ง๋จ๋ง ๊ฐ๋ฅํ๋ค.๊ฒฐ๊ณผ์ ์ผ๋ก ์ต์ด ์ง๋จ ๋ชฉ์ ๊ณผ ๋ฌ๋ผ์ ์ฌ์ฉํ์ง ์์ง๋ง ๊ธฐ๋ก์ ์ํด ๋จ๊ฒจ๋๋๋ค.ย Arachni - ์น ๋ณด์์ทจ์ฝ์ ํ ์คํธhttps://github.com/ahannigan/docker-arachniย GitHub - ahannigan/docker-arachni: Arachni Web Application Scanner in DockerArachni Web Application Scanner in Docker. Contribute to ahannigan/docker-arachni development by creating an account on GitHub.github.comย Arachni๋ ..
ICMP๋?ICMP(Internet Control Message Protocol, ์ธํฐ๋ท ์ ์ด ๋ฉ์์ง ํ๋กํ ์ฝ)๋ ๋คํธ์ํฌ ์ฅ์น์์ ๋คํธ์ํฌ ํต์ ๋ฌธ์ ๋ฅผ ์ง๋จํ๋ ๋ฐ ์ฌ์ฉํ๋ ๋คํธ์ํฌ ๊ณ์ธต ํ๋กํ ์ฝ์ด๋ค. ICMP๊ฐ ์ฌ์ฉ๋๋ ์ฃผ์ ๋ฐฉ๋ฒ์ ๋ฐ์ดํฐ๊ฐ ๋ชฉ์ ์ง์ ์ ๋๋ฌํ๋์ง, ๋๋ฌ ์๊ฐ์ด ์ ์ ํ์ง๋ฅผ ํ์ธํ๋ ๊ฒ์ด๋ค.ย ICMP์ ์ฉ๋ICMP์ ์ฃผ์ ์ฉ๋๋ ์ค๋ฅ๋ณด๊ณ ์ด๋ค. ๋ ์ฅ์น๊ฐ ์ธํฐ๋ท์ ํตํด ์ฐ๊ฒฐ๋๋ฉด ICMP๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๊ฐ ์๋ํ ๋์์ ๋๋ฌํ์ง ๋ชปํ ๊ฒฝ์ฐ, ์์ ์ฅ์น์์ ์ ์ก์ฅ์น๋ก ์ ๋ฌํ ์ ์๋ ์ค๋ฅ๋ฅผ ์์ฑํ ์ ์๋ค. ๋ค๋ง ๋ฐ์ดํฐ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๋ฌํ๊ธฐ ์ํ ํ๋กํ ์ฝ์ด์ง๋ง, ๋ฐ์ดํฐ ์์ฒด๋ฅผ ๊ด๋ฆฌํ์ง๋ ์๋๋ค.์๋ฅผ ๋ค์ด ๋ฐ์ดํฐ ํจํท์ด ๋ผ์ฐํฐ์ ๋นํด ๋๋ฌด ํฐ ๊ฒฝ์ฐ ๋ผ์ฐํฐ์์๋ ํจํท์ ์ญ์ ํ๊ณ ICMP ๋ฉ์..
์๋ํ๋ธ๋?์๋ํ๋ธ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ๋ฒ๊ทธ, ์ฝ๋ ์ค๋ฉ, ๋ณด์ ์ทจ์ฝ์ ๋ฑ์ ๋ฐ๊ฒฌํ๊ธฐ ์ํ ์ ์ ์ฝ๋ ๋ถ์ ํด์ด๋ค.ย ์ค์น / ์ธํ 1. ์๋ํ๋ธ ์ค์นhttps://www.sonarsource.com/products/sonarqube/downloads/ย Download | SonarQubeGet the latest LTS and version of SonarQube the leading product for Code Quality and Security from the official download page.www.sonarsource.comย 2. ์๋ํ๋ธ ์คํ๋ค์ด๋ก๋ ํ์ผ ์์ถ ํ๊ธฐ์๋ํ๋ธ ์คํWindow: /bin/windows-x86-64/StartSonar.bat ์คํLinux: /bin/linu..
Apache POI ์์ฉ ๋ผ์ด๋ธ๋ฌ๋ฆฌApache POI๋ Java์์ ์์ ์ ๋ค๋ฃฐ ์ ์๊ฒ ๋์์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค.ํ์ฌ์์ Excel ํ์ผ์ ํ์ฑ ํ ์ผ์ด ๊ฝค๋ ์์ด์ ์์ฃผ ์ฐ๋ ๊ธฐ๋ฅ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํํ๋ค.ย gradle๋ก apachepoi ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ import ํ ๋ค, ์๋ gitlab ์ฝ๋๋ full code๋ฅผ ๋ณต๋ถํด์ ์ฌ์ฉํ๋ฉด ๋๋ค.๊ท์ฐฎ์์ SpringBoot ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด์ gradle๋ก apache poi ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ import ํ๋ค.implementation 'org.apache.poi:poi-ooxml:5.2.3'์ฐธ๊ณ ๋งํฌJAVA & Spring/๋ผ์ด๋ธ๋ฌ๋ฆฌ & Tools] - [Apache POI] Java ์ฝ๋๋ก ์์ (.xlsx) ํ์ผ ์์ฑํ๊ธฐ - Java๋ก Excel ๋ค๋ฃจ๊ธฐย [Apac..
ํ๋ก์(Proxy)๋?ํ๋ก์ ์๋ฒ๋ ํด๋ผ์ด์ธํธ - ์๋ฒ ์ฌ์ด์ ์์นํ์ฌ ํต์ ์ ์ค๊ณํ๋ ์ญํ ์ ํ๋ ์์ฉ ํ๋ก๊ทธ๋จ(์๋ฒ)์ ๋งํ๋ค.ํ๋ก์(Proxy)๋ '๋๋ฆฌ', '์ค๊ณ' ๋ผ๋ ์๋ฏธ๋ฅผ ๊ฐ๊ณ ์์ผ๋ฉฐ, ์ฌ๋ฌ ๊ฐ์ง ์ด์ ๋ก ์ง์ ํต์ ํ ์ ์๋ ๊ฒฝ์ฐ์ ์ค๊ฐ์์ ํต์ ์ ์ค๊ณํ๋ ์ญํ ์ ์ํํ๋ค. (๋ณด์, ์ฑ๋ฅ, ์์ ์ฑ ํฅ์ ๋ฑ์ ๋ชฉ์ ์ ๊ฐ๊ณ ์๋ค.)์ผ๋ฐ์ ์ผ๋ก ์น์ ํด๋ผ์ด์ธํธ์์ ์๋ฒ๋ก ์์ฒญ์ ๋ณด๋ด๊ณ , ์๋ฒ์์ ํด๋ผ์ด์ธํธ๋ก ์๋ตํ๋ ๋ฐฉ์์ ํต์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ค. ์ฌ๊ธฐ์ ํ๋ก์ ์๋ฒ๋ฅผ ์ถ๊ฐํด์ ์์ฒญ์ ์ค๊ณํ๋๋ก ํด์, ๋ณด์์์ ์์ ์ฑ์ ๋์ด๊ฑฐ๋, ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์๋ค.์ ๋ฆฌํ์๋ฉด ์๋์ ๊ฐ์ ๊ณผ์ ์ ๊ฑฐ์ณ์ ํต์ ์ด ์ด๋ฃจ์ด์ง๋ค.ํด๋ผ์ด์ธํธ -> ํ๋ก์ ์๋ฒ ์์ฒญํ๋ก์ ์๋ฒ -> ์๋ฒ ์์ฒญ์๋ฒ -> ํ๋ก์ ์๋ฒ ์๋ต..
vue cli ๊ณต์ ์ฌ์ดํธhttps://cli.vuejs.org/ย Vue CLIย cli.vuejs.orgย node, npm ๋ฒ์ ํ์ธnode, npm ๋ฒ์ ์ ํ์ธํ๊ณ , ์์ผ๋ฉด ์ค์นํด์ผํ๋ค.node -vnpm -vย vue cli ์ค์นnpm install -g @vue/cliย vue ํ๋ก์ ํธ ์์ฑvue create ย vue ํ๋ก์ ํธ ์คํnpm run serve
Vue ์ธ์คํด์ค: new Vue()new Vue()๋ก ์์ฑํ Vue ์ธ์คํด์ค๋ ํ๋ฉด์ ๋ฟ๋ ค์ง๋ ์ต์์(Root) ์ปดํฌ๋ํธ๋ฅผ ๋งํ๋ค.ย ํด๋น Vue Instance์์ ์ฌ๋ฌ ์ปดํฌ๋ํธ๋ฅผ ํธ์ถ์์ ์ฌ์ฉํ๋ ๊ฒ์ด Vue์ ๊ธฐ๋ณธ ๋ฌธ๋ฒ์ด๋ค.ย ์๋์ 5๊ฐ์ง ์์๋ค์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ค.el: '#app'Vue ์ธ์คํด์ค๊ฐ ๊ด๋ฆฌํ DOM ์์๋ฅผ ์ง์ ํ๋ค. ์์ชฝ์ id=app์ธ ์ Vue ์ธ์คํด์ค๋ฅผ ์ฐ๊ฒฐํ๋ค.ํด๋น Vue ์ธ์คํด์ค๋ ์์ id=app์ธ ํ๊ทธ๋ง์ ๊ด๋ฆฌํ๋ค.dataVue ์ธ์คํด์ค์์ ๊ด๋ฆฌํ ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๋ค.ย {{ message }} ย message๋ ์ด๋ฆ์ ๋ฐ์ดํฐ๋ฅผ Vue ์ธ์คํด์ค ๋ด์์ย this.message๋ก ์ฌ์ฉ ๊ฐ๋ฅํ๊ณ , DOM ์์์์๋ย {{message}}๋ก ๊ฐ..
๋์ปค(Docker)๋?๋์ปค(docker)๋ ์ปจํ ์ด๋ ๊ธฐ๋ฐ ๊ฐ์ํ ํ๋ซํผ์ด๋ค. ์ฌ๋ฌ ์์ฉ ํ๋ก๊ทธ๋จ๋ค์ ์ปจํ ์ด๋๋ก ํจํค์ง ํด์ ์คํํ ์ ์๋ค.์ด ๊ธ์์ ๋์ปค๋ฅผ ๊ฐ๋จํ๊ฒ ์์ํ๊ณ , ์ฃผ์ ๋ช ๋ น์ด๋ค์ ํ์ธํ๊ธฐ ์ํ ์์ ๋ฅผ ์ํด DB๋ฅผ ํ๋ ๋์๋ณผ ๊ฒ์ด๋ค.ย ๋์ปค ์ด๋ฏธ์ง(image)๋์ปค ์ด๋ฏธ์ง๋ ํน์ ์ํํธ์จ์ด(PostgreSQL ๋ฑ)๋ฅผ ์คํํ๊ธฐ ์ํ ์ฝ๋, ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์ค์ ํ์ผ, ์ข ์์ฑ, ํ๊ฒฝ๋ณ์ ๋ฑ ๋ชจ๋ ๊ฒ์ ํฌํจํ๋ ์ฝ๊ธฐ ์ ์ฉ ํ ํ๋ฆฟ์ด๋ค. ์ด ํ ํ๋ฆฟ์ ๊ธฐ๋ฐ์ผ๋ก ์ปจํ ์ด๋๋ฅผ ์์ฑํ๋ฉด ์ค์ ๋ก ํด๋น ์ํํธ์จ์ด๋ฅผ ์คํํ ์ ์๋ค.๊ธฐ๋ณธ์ ์ผ๋ก Docker Hub์์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ๊ณ ์๊ณ , docker ๋ช ๋ น์ด๋ฅผ ํตํด ํด๋น ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ธ์ด ๋ค์ด๋ฐ์์ ์ปจํ ์ด๋ ์์ฑ์ ์ฌ์ฉํ ์ ์๋ค.๋์ปค ์ปจํ ์ด๋(Container)๋์ปค ์ปจํ ์ด๋๋..
Kakao Developers์ด๋ฏธ์ง ์ค๋ช ์ ๊ฐ ์ด๋ฏธ์ง ๋ด์ฉ์ ๋ํ ์์น(๊ฒฝ๋ก) ์ ์ด๋์ผ๋ ์ฐธ๊ณ ํด ์ฃผ์ธ์.ย 1. KakaoDevelopers ์ ์https://developers.kakao.com/ย Kakao Developers์นด์นด์ค API๋ฅผ ํ์ฉํ์ฌ ๋ค์ํ ์ดํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํด๋ณด์ธ์. ์นด์นด์ค ๋ก๊ทธ์ธ, ๋ฉ์์ง ๋ณด๋ด๊ธฐ, ์น๊ตฌ API, ์ธ๊ณต์ง๋ฅ API ๋ฑ์ ์ ๊ณตํฉ๋๋ค.developers.kakao.comย 2. ์ ํ๋ฆฌ์ผ์ด์ ์ถ๊ฐํ๊ธฐย 3. ์ ํ๋ฆฌ์ผ์ด์ ์ถ๊ฐย 4.Rest API ํค ํ์ธย 5. Web ํ๋ซํผ ๋ฑ๋กย 6. ์ฌ์ดํธ ๋๋ฉ์ธ ์ค์ ย 7. ์นด์นด์ค ๋ก๊ทธ์ธ ํ์ฑํ, Redirect URI ๋ฑ๋กย 8. ๋์ ํญ๋ชฉ ์ค์ ์ฌ์ฉํ๋ ค๋ ๊ฐ์ธ ์ ๋ณด ๋์ ์ค์ ( email, nickname ์ ๋ณด )ย 9. (์ถ๊ฐ) ์นด์นด์ค ๋ก๊ทธ์ธ ๋ฒ..
์ด์ ๊ธ์์ S3 bucket๊ณผ IAM์ ์์ฑํ๊ณ SpringBoot project์์ S3 ์ ๊ทผ์ ์ฌ์ฉํ accessKey์ secretKey๋ฅผ ์ป๋ ๊ฒ๊น์ง ๋ค๋ค๋ค. 2024.01.21 - [DevOps] - [AWS/S3] Spring boot project ์ด๋ฏธ์ง ์ ๋ก๋๋ฅผ ์ํด S3 ๋ฒ์ผ ๋ง๋ค๊ธฐ [AWS/S3] Spring boot project ์ด๋ฏธ์ง ์ ๋ก๋๋ฅผ ์ํด S3 ๋ฒ์ผ ๋ง๋ค๊ธฐ Amazon S3 ๋ฒํท ๋ง๋ค๊ธฐ IAM ๋ง๋ค๊ธฐ ์์ฑ ์๋ฃ IAM accessKey, secretKey ์ป๊ธฐ IAM - ์ฌ์ฉ์ - ๋ณด์ ์๊ฒฉ ์ฆ๋ช ์ก์ธ์ค ํค ๋ง๋ค๊ธฐ CLI ์ ํ accessKey, secretKey ์ ์ฅ ์ ๋ ๊ฐ์ง Key๋ฅผ ์ ์ฅํด ๋๋ค๊ฐ spring properties์ ๋ฑ innovation123.ti..
MyBatis๋?MyBatis๋ JdbcTemplate์ด ์ ๊ณตํ๋ ๋๋ถ๋ถ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ๊ทธ๋ฌ๋ JdbcTemplate์ ๋ฌธ์ ์ ์ค ํ๋์ธ ์ฌ๋ฌ ์ค์ String ํ sql์ ์์ฑํด์ผ ํ๋ค๋ ์ ์ MyBatis๋ฅผ ์ด์ฉํ์ฌ ํด๊ฒฐํ ์ ์๋ค.MyBatis๋ SQL์ xml์ ํธ๋ฆฌํ๊ฒ ์์ฑํ ์ ์๊ณ , xml ๋ด์์ ๋์ ์ฟผ๋ฆฌ๋ฅผ ๋งค์ฐ ํธ๋ฆฌํ๊ฒ ์์ฑํ ์ ์๋ค.ย JdbcTemplate์ ์คํ๋ง์ ๋ด์ฅ๋ ๊ธฐ๋ฅ์ด๊ณ , ๋ณ๋์ ์ค์ ์์ด ์ฌ์ฉํ ์ ์์ง๋ง, MyBatis๋ ์ฝ๊ฐ์ ์ค์ ์ด ํ์ํ๋ค. ๋ฐ๋ผ์ ๋์ ์ฟผ๋ฆฌ์ ๋ณต์กํ ์ฟผ๋ฆฌ๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ MyBatis๋ฅผ ์ฌ์ฉํ๊ณ , ๋จ์ํ ์ฟผ๋ฆฌ๋ค์ด ๋ง๋ค๋ฉด JdbcTemplate์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ ๊ฒ์ด๋ค.ย ย 2024.07.31 ์ถ๊ฐ๋จ์ํ ๋๋ฉ์ธ ๊ด๋ จ ์ํฐํฐ๋ฅผ ๋ถ๋ฌ์ค๋..
INSERT INTO : ๋ฐ์ดํฐ ์ถ๊ฐ id, name, loginId, password์ attribute๋ฅผ ๊ฐ๊ณ ์๋ MEMBER table์ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํ๋ ์์ ์ด๋ค. TABLE์ ์กด์ฌํ๋ ์ฌ๋ฌ๊ฐ์ง constraints๋ค์ ๋ง๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํด์ผํ๋ค. ๋ฐฉ๋ฒ 1 : ๋ชจ๋ ์์ฑ ์ ํ table์ ์กด์ฌํ๋ attribute์ ์์๋๋ก ๊ฐ์ ๋ฃ์ด์ค์ผ ํ๋ค. table์ ์กด์ฌํ๋ ๋ชจ๋ attribute์ ๊ฐ์ ๋ฃ์ด์ค์ผ ํ๋ค. (null์ด๋ผ๋ ๋ฃ์ด์ผํจ) insert into member values(3, 'Lee', 'Lee1', 'pwLee'); ๋ฐฉ๋ฒ 2 : column ์ง์ ์๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด, attribute ์์๋ฅผ ๋ง์ถ์ง ์์๋ ๋๋ค. (์์๋ฅผ ์ง์ ํด์ค๋ค.) ์ด ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด ๋ชจ๋ attribut..
๋ฐฉํ๋ฒฝ์ด๋?๋ฐฉํ๋ฒฝ(Firewall)์ ๋คํธ์ํฌ ๋ณด์ ์์คํ ์ด๋ค. ๋ฏธ๋ฆฌ ์ ์๋ ๋ณด์ ๊ท์น์ ๋ฐ๋ผ ๋ค์ด์ค๊ณ ๋๊ฐ๋ ๋คํธ์ํฌ ํธ๋ํฝ์ ๋ชจ๋ํฐ๋งํ๊ณ ์ ์ดํ๋ ์ฅ์น ๋๋ ์ํํธ์จ์ด์ด๋ค. ๋ถ๋ฒ ์ ๊ทผ, ์ ์์ ์ ๊ทผ, ํธ๋ํฝ ๋ญ๋น ๋ฑ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.ย ๋ฐฉํ๋ฒฝ์ ํธ๋ํฝ ํํฐ๋ง, ๋คํธ์ํฌ ์ธ๋ถํ, ๊ฐ์ ๋ฐ ๋ก๊น , ์ธ์ฆ, ํ๋ผ์ด๋ฒ์ ๋ณดํธ ๋ฑ์ ์ฌ๋ฌ ๊ฐ์ง ๊ธฐ๋ฅ์ ํ๋ค.์ด์ค ์ธ๋ฐ์ด๋ ๊ท์น, ์์๋ฐ์ด๋ ๊ท์น์ ํธ๋ํฝ ํํฐ๋ง ๊ธฐ๋ฅ์ ํฌํจ๋๋ค.ย ํธ๋ํฝ ํํฐ๋ง(์ ๊ทผ ์ ์ด)ํธ๋ํฝ ํํฐ๋ง์ด๋ ๋ฐฉํ๋ฒฝ์ด ๋คํธ์ํฌ๋ฅผ ํตํด ์ฃผ๊ณ ๋ฐ๋ ๋ฐ์ดํฐ ํจํท์ ๊ฒ์ฌํ๊ณ ์ ์ดํ๋ ๊ฒ์ ๋งํ๋ค.๋ฐฉํ๋ฒฝ์ด ํ์ฉํ ํธ๋ํฝ๋ง ๋คํธ์ํฌ๋ก ๋ค์ด์ค๊ฑฐ๋ ๋๊ฐ ์ ์๋๋ก ํ๋ค.ํธ๋ํฝ ํํฐ๋ง ๋ฐฉ์ ์ค ํจํท ํํฐ๋ง ๋ฐฉ์์ย ๋ฐ์ดํฐ ํจํท์ ํค๋ ์ ๋ณด๋ฅผ ๋ถ์ํ์ฌ ํธ๋ํฝ์ ํ์ฉ/..
IntelliJ๋ก ์๋ฐ ํ๋ก์ ํธ ์ค, ํ๊ธ ๊นจ์ง ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค. ์ด๋ VM, ์๋ฒ(Tomcat), ํ์ผ(JSP ๋ฑ), DB ์์ ๊ฐ๊ฐ ์ฌ์ฉํ๋ ์ธ์ฝ๋ฉ ๋ฐฉ์์ด ๋ฌ๋ผ์ ๋ฐ์ํ๋ค. ๋ฐ๋ผ์ ์ฌ์ฉํ๋ ๋ชจ๋ ๊ฒ๋ค์ ์ธ์ฝ๋ฉ์ ๊ฐ์ฅ ๋ฒ์ฉ์ ์ธ UTF-8๋ก ์ง์ ์ค์ ์ ํด์ค์ผ ํ๋ค. IntelliJ์์ ๊ฐ๋จํ๊ฒ VM, Tomcat, File์์ UTF-8 ์ธ์ฝ๋ฉ ์ค์ ์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์. 1. IntelliJ VM Encoding ์ค์ 1) Help -> Edit Custom VM Options... 2) -Dfile.encoding=UTF-8 ์ถ๊ฐ 2. Tomcat Encoding ์ค์ 1) Run -> Edit Configurations ... 2) VM options -> -Dfile.encoding=U..
ํ๋ก์ธ์ค ํ๋ก์ธ์ค = ์คํ ์ค์ธ ํ๋ก๊ทธ๋จ ํ๋ก์ธ์ค(process)๋ ์ปดํจํฐ์์ ์ฐ์์ ์ผ๋ก ์คํ๋๊ณ ์๋ ์ปดํจํฐ ํ๋ก๊ทธ๋จ์ ๋งํ๋ค. foreground process / background process foreground process ์ ธ์์ ํ๋ก์ธ์ค ์คํ์ ๋ช ๋ นํ์ ๋, ํด๋น ํ๋ก์ธ์ค๊ฐ ์ข ๋ฃ๋๊ธฐ ์ ๊น์ง ์ฌ์ฉ์๊ฐ ๋ค๋ฅธ ์ ๋ ฅ์ ํ ์ ์๋ ํ๋ก์ธ์ค๋ฅผ ๋งํ๋ค. ํด๋น ํ๋ก์ธ์ค์ ์คํ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฐ๋ค๋ฉด, ํ๋ก์ธ์ค ์ข ๋ฃ ์ ๊น์ง ์ฌ์ฉ์๋ ์ ๋ ฅ์ ํ ์ ์๋ค. [Ctrl] + c ๋ช ๋ น์ด : ์คํ์ค์ธ foreground process๋ฅผ ์ฆ์ ์ข ๋ฃํ๋ ๋ช ๋ น์ด์ด๋ค. ํด๋น ํ๋ก์ธ์ค๋ ์์ ํ ์ข ๋ฃ๋๋ค. -> ์์ ์ด ์คํ ์ค์ ls ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด๋ ํด๋น ์์ ์ด ๋ชจ๋ ๋๋ ๋ค์ ๋์ํ๋ค. (sleep n)์ n์ด๋์ ์๋ฌด๊ฒ๋..
BoardService Github https://github.com/HSRyuuu/my_first_board 1. ๊ฐ์ ํ๋ก์ ํธ ๋ช : Board Service ๊ฐ๋ฐ ์ธ์ : 1๋ช ๊ฐ๋ฐ๊ธฐ๊ฐ : 2023.04.11 ~ 2023.05.15 ์ฃผ์ ๊ธฐ๋ฅ : ๊ธฐ๋ณธ์ ์ธ ๊ฒ์ํ์ ๊ธฐ๋ฅ (์๋์์ ์ถ๊ฐ๋ก ์ค๋ช ) ์ฌ์ฉ ๊ธฐ์ : Java, SpringBoot, gradle, thymeleaf, MyBatis (์๋์์ ์ถ๊ฐ๋ก ์ค๋ช ) ๋ฐ์ดํฐ๋ฒ ์ด์ค : H2 Database 2. skills๐จ Java 11 SpringBoot 2.7.10 gradle Thymeleaf MyBatis H2 Database HTML5, CSS3, BootStrap ๊ธฐํ ์ฌ์ฉ ๊ธฐ์ ํํฐ(Spring Interceptor) ์ธ์ ์ฟ ํค๋ฅผ ์ด์ฉํ์ฌ ๋ก..
์ฟ ํค ๋ก๊ทธ์ธ ๊ธฐ๋ฅ์ด ์๋ ์๋น์ค๋ฅผ ๊ฐ๋ฐํ๋ค ๋ณด๋ฉด, ๋ก๊ทธ์ธ ์ ์ด์ฉํ ์ ์๋ ํ์ด์ง์ ๊ทธ๋ ์ง ์์ ํ์ด์ง๊ฐ ์๋ค. ๊ฐ์ ํ๋ฉด๋ ๋ก๊ทธ์ธ ์ด์ฉ์์๊ฒ ๋ณด์ฌ์ค ํ๋ฉด๊ณผ ๋น๋ก๊ทธ์ธ ์ด์ฉ์์๊ฒ ๋ณด์ฌ์ค ํ๋ฉด์ ๋ค๋ฅด๊ฒ ์ค์ ํด์ผ ํ ๋๋ ์๋ค. ์ด๋, ์ฟ ํค๋ฅผ ์ฌ์ฉํด์ ๋ก๊ทธ์ธ ์ ๋ณด๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค. ์๋ฒ์์ ํด๋ผ์ด์ธํธ๋ก loginId๊ฐ ๋ด๊ธด ์ฟ ํค๋ฅผ ์ ๋ฌํ๊ณ , ํด๋ผ์ด์ธํธ์์๋ ๊ทธ ์ฟ ํค๋ฅผ ์ ์ฅํด ๋๋ค๊ฐ HTTP ์์ฒญ ์ ์๋ฒ๋ก ์ ๋ฌํ๋ค. //Cookie ์์ฑ์ Cookie idCookie = new Cookie( String name, String value ) //HTTP ์๋ต์ ์ฟ ํค ๋ด๊ธฐ response.addCookie( idCookie ); //์ฟ ํค ์ญ์ ํ๋ ๋ฒ idCookie.setMaxAge(0); //..
1. JDBC ๋๋ผ์ด๋ฒ ๋ค์ด MySQL ๋๋ผ์ด๋ฒ๋ฅผ ๊ณต์ ์น์ฌ์ดํธ์์ ๋ค์ด๋ก๋ํ๋ค. ์ด์ ๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง, MariaDB ์ฌ์ฉ ์์๋ MySQL ๋๋ผ์ด๋ฒ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ ๊ฒ ๊ฐ๋ค. ์๋์ ๊ณต์ ์ฌ์ดํธ์์ ๋ค์ด๋ก๋ํ ์ ์๋ค. (๊ณต์ ์ฌ์ดํธ) https://dev.mysql.com/downloads/connector/j/ (Window) Select Operating System... Platform Indepentent ์ ํ ์๋์ Zip Archive ๋ค์ด 2. connector. jar ํ์ผ ์ ๋ก๋ ์์ถ์ ํ์ด์ ํ์ผ์ ์ด๋ฉด ์๋์ ๊ฐ์ ํ์ผ, ํด๋๊ฐ ์๋ค. ๊ทธ์ค์ mysql-connector-j-8.1.0.jar ํ์ผ์ ํ๋ก์ ํธ ๋น๋ ๊ฒฝ๋ก์ ์ถ๊ฐํ๋ค. ํ๋ก์ ํธ ์๋์ lib(๋ผ์ด๋ธ๋ฌ๋ฆฌ) ํด๋๋ฅผ ๋ง๋ค๊ณ ๊ทธ..