๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ235 MSA ์ ํฅ์ฌ๊ณ ๋ ์ํคํ ์ฒ ๊ฐ์์ํคํ ์ฒ๋ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๊ณต๋ถํ๋ฉด์ ๊ฐ์ฅ ํต์ฌ์ ์ผ๋ก ๋๊ผ๋ ๋ง๋ค์ด ์๋ค. "์ํํธ์จ์ด(๊ธฐ์ )๋ ๋๊ตฐ๊ฐ์ ํ์๋ก ์ธํด์ ์์๋๋ค.""์ํํธ์จ์ด(๊ธฐ์ )๋ ์ฌ์ฉ์์๊ฒ ์๋ก์ด ๊ฐ์น๋ฅผ ์ ๊ณตํด์ผ ํ๋ค.""์ํํธ์จ์ด(๊ธฐ์ )๋ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋ณํํ๋ ์๊ตฌ์ฌํญ์ ๋ง์ถฐ ์ ์ํด์ผ ํ๋ค. " ๋ชจ๋ ๊ธฐ์ ์ด๋ ์ฐ์ , ์์ดํ ์ ๋์ค์ ๋์ฆ์ ์ํด์ ๊ฐ๋ฐ๋๊ณ , ๋ง๋ค์ด์ง๊ณ ๊ทธ ๊ธฐ์ ์ ์ด์ฉ์์๊ฒ ์๋ก์ด ๊ฐ์น๋ฅผ ์ ๊ณตํ๋ฏ๋ก์จ ์กด์ฌ ๊ฐ์น๋ฅผ ์ฆ๋ช ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์๊ฐ์ด ์ง๋๋ฉด์ ์ด์ฉ์๊ฐ ์ํ๋ ๋ฐฉํฅ์ฑ๊ณผ ๋ชจ์ต์ด ๋ฌ๋ผ์ง ๋ ๊ทธ ๋ณํ์ ๋ง์ถฐ ๊ธฐ์ ๋ ๋ณํํด์ผ ์ด์๋จ์ ์ ์๊ณ , ์์ฅ์์ ์ง์ ๊ฐ๋ฅํด์ง๊ณ , ํ ๊ธฐ์ ๊ณผ ๊ฒฌ์ฃผ์ด๋ ๊ฒฝ์๋ ฅ์ด ์๊ธด๋ค. ๋ณํ์ ์ ์ํ๋ ์ํํธ์จ์ด์ ํน์ง์ 3๊ฐ์ง ํน์ฑ์ ํ์๋ก ํ๋ค.์ ์ฐ์ฑ, ํ์ฅ์ฑ, ์ ์ง๋ณด์์ฑ๋ณํ์ .. Architecture 2024. 8. 26. ํ๋ก๊ทธ๋๋จธ์ค - 12914: ๋ฉ๋ฆฌ ๋ฐ๊ธฐ - ๋ฌธ์ ํ์ด ์ ๊ทผ๋ฒ ๋ฐ ์๋ฐ ์ ๋ต ํ์ด https://school.programmers.co.kr/learn/courses/30/lessons/12914 ํ๋ก๊ทธ๋๋จธ์ค์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.programmers.co.kr ๋ฌธ์ ์ค๋ช ํจ์ง์ด๋ ๋ฉ๋ฆฌ ๋ฐ๊ธฐ๋ฅผ ์ฐ์ตํ๊ณ ์์ต๋๋ค. ํจ์ง์ด๋ ํ๋ฒ์ 1์นธ, ๋๋ 2์นธ์ ๋ธ ์ ์์ต๋๋ค. ์นธ์ด ์ด 4๊ฐ ์์ ๋, ํจ์ง์ด๋ (1์นธ, 1์นธ, 1์นธ, 1์นธ) (1์นธ, 2์นธ, 1์นธ) (1์นธ, 1์นธ, 2์นธ) (2์นธ, 1์นธ, 1์นธ) (2์นธ, 2์นธ) ์ 5๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ๋งจ ๋ ์นธ์ ๋๋ฌํ ์ ์์ต๋๋ค. ๋ฉ๋ฆฌ๋ฐ๊ธฐ์ ์ฌ์ฉ๋ ์นธ์ ์ n์ด ์ฃผ์ด์ง ๋, ํจ์ง์ด๊ฐ ๋์ ๋๋ฌํ๋ ๋ฐฉ๋ฒ์ด ๋ช ๊ฐ์ง์ธ์ง ์์๋ด,.. Coding Test 2024. 8. 19. ๋ฌด์ค๋จ ๋ฐฐํฌ ์ค์ต - ๋ธ๋ฃจ๊ทธ๋ฆฐ ์ ๋ต ์์ ์ค์ต ๋ ํฌ์งํ ๋ฆฌ์ ํ๊ฒฝ ์ ํ ์ ์งํํ์ต๋๋ค.๋ชป ๋ณด์ ๋ถ๋ค์ด ๊ณ์๋ค๋ฉด ๋จผ์ ์ด ํฌ์คํ ์ ๋ณด๊ณ , ๋ฌด์ค๋จ ๋ฐฐํฌ ์ค์ต์ ์งํํด์ฃผ์ธ์. https://programmer-may.tistory.com/213 ๋ฌด์ค๋จ ๋ฐฐํฌ ์ค์ต ๊ธฐ๋ณธ ์ ํ (Github Actions, Nginx ํ์ฉ)๋ฌด์ค๋จ ๋ฐฐํฌ ์ด๋ก ์ ๋ํด์ ํ์ต์ ํ์๊ณ , ๋ฌด์ค๋จ ๋ฐฐํฌ๋ฅผ ์ด์ ์ค์ตํด๋ณด๊ฒ ์ต๋๋ค. ์ด๋ก ์ ๊ดํด์๋ ์๋ ํฌ์คํ ์ ์ฐธ๊ณ ํด์ฃผ์ธ์.https://programmer-may.tistory.com/209 ๋ฌด์ค๋จ ๋ฐฐํฌ(Zero-downtime Deploymentprogrammer-may.tistory.com ๋ธ๋ฃจ ๊ทธ๋ฆฐ ์ ๋ต๋ธ๋ฃจ ๊ทธ๋ฆฐ ์ ๋ต(Blue-Green Deployment)์ ๋ ๊ฐ์ ๋์ผํ ํ๊ฒฝ(๋ธ๋ฃจ ํ๊ฒฝ๊ณผ ๊ทธ๋ฆฐ ํ๊ฒฝ)์ ์ฌ์ฉํ์ฌ ๋ฐฐํฌํ.. DevOps/CI&CD 2024. 8. 18. ๋ฌด์ค๋จ ๋ฐฐํฌ ์ค์ต ๊ธฐ๋ณธ ์ ํ (Github Actions, Nginx ํ์ฉ) ๋ฌด์ค๋จ ๋ฐฐํฌ ์ด๋ก ์ ๋ํด์ ํ์ต์ ํ์๊ณ , ๋ฌด์ค๋จ ๋ฐฐํฌ๋ฅผ ์ด์ ์ค์ตํด๋ณด๊ฒ ์ต๋๋ค. ์ด๋ก ์ ๊ดํด์๋ ์๋ ํฌ์คํ ์ ์ฐธ๊ณ ํด์ฃผ์ธ์.https://programmer-may.tistory.com/209 ๋ฌด์ค๋จ ๋ฐฐํฌ(Zero-downtime Deployment) ์ ๋ต๐ฉ๊ฐ์๋ค์ด ํ์(Downtime)์ ์์คํ , ์๋ฒ, ๋คํธ์ํฌ, ์ ํ๋ฆฌ์ผ์ด์ ๋๋ ์๋น์ค๊ฐ ์ ์์ ์ผ๋ก ์๋ํ์ง ์๋ ์๊ฐ์ ์๋ฏธํฉ๋๋ค. ์ฆ, ์ฌ์ฉ์๊ฐ ํด๋น ์์คํ ์ด๋ ์๋น์ค๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ํ๋ฅผprogrammer-may.tistory.com ๋ณธ ์ค์ต์์ ๋ฌด์ค๋จ ๋ฐฐํฌ ์งํ ๊ณผ์ ์ ๋ฌด์ค๋จ ๋ฐฐํฌ ์ค์ต์ ์๋์ ๊ฐ์ด ์งํ๋์ต๋๋ค. ์ต์ํ์ ๊ธฐ์ ๋ก ๋ฌด์ค๋จ ๋ฐฐํฌ๋ฅผ ์ฒ์ ๋์ ํด๋ณด๋ ์ค์ต์์๊ฒ ๋ถ๋ด์์ด ๋ค๊ฐ๊ฐ ์ ์๊ฒ ํ์์ต๋๋ค. ๋์ปค๋ฅผ ํจ๊ปํด์ ๋์ปค ์ด๋ฏธ์ง๋ฅผ .. DevOps/CI&CD 2024. 8. 13. Termius ๋ค์ด๋ก๋ ๋ฐ ์คํ, EC2 ์ ์ ๊ฐ์์๊ฒฉ ๋ฐ์คํฌํฑ ์ดํ๋ฆฌ์ผ์ด์ ์ผ๋ก MobaXterm ์ ์ ์ฌ์ฉํ๊ณ ์์๋๋ฐ, ๋ฌด์ค๋จ ๋ฐฐํฌ ์ค์ต์ ํ๊ธฐ ์ํด์ OS ์ข ์์ ์ด์ง ์์์ผํจ์ผ๋ก ๋ฐ๊ฟ์ผ ํ๋ค.Telnet, SSH ์ ์์ ์ํด PuTTY๋ XShell์ ๊น๊ณ , FTP/SFTP์ ์์ ์ํด FileZilla๋ฅผ ๊น๊ณ , ๊ทธ ์ธ ๋ค์ํ ์๊ฒฉ ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ณต์๊ฐ ์ค์นํ์ฌ ๊ด๋ฆฌํ๋ฉด ๋ง์ด ๋ณต์กํด์ง๊ณ ๋ฒ๊ฑฐ๋ก์ ์ง๋ค.ํ์ง๋ง, MobaXterm ์ ์ด์ฉํ๋ฉด ์์ UI ์ ํจ๊ป SSH ์ ์์ํ์ฌ CLI ์ SFTP ๊น์ง ํ ๋ฒ์ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํด์ง๋ค. ๋ฌผ๋ก , FileZilla ๋ CLI ๊ฐ ๊ฐ๋ฅํ ์ ์๋๋ฐ ๊ทธ๋ ๊ฒ ํ๋ ค๋ฉด Pro ๋ฒ์ ์ ๊ตฌ๋ ํด์ผ ํ๋ค.์ด๋ฐ MobaXterm ๋ ํ๋ ํฐ ๋จ์ ์ด ์๋๋ฐ, ๋ฐ๋ก Window OS ์์๋ง ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ด๋ค.ํ์ ์ค.. Tool 2024. 8. 6. ์๋ฐ final ํค์๋ (feat. String ํด๋์ค) final ํค์๋๋ ๋ถ๋ณ์ฑ์ ๋ปํ๋ค.์ด final ํค์๋๋ ์ด๋ค ๊ณณ์ ์ฌ์ฉ๋๋์ ๋ถ๋ณ์ ํน์ง ์ค ์กฐ๊ธ์ฉ ์ด์ง ๋ค๋ฅธ ์๋ฏธ๋ฅผ ๊ฐ์ง๋ค. final ํค์๋๋ ๋ณ์(variable), ๋ฉ์๋(method), ๋๋ ํด๋์ค(class)์ ์ฌ์ฉ๋ ์ ์๋ค. ๐final Class final ํค์๋๋ฅผ ํด๋์ค์ ๋ถ์ด๋ฉด ์์ ๋ถ๊ฐ๋ฅ ํด๋์ค๊ฐ ๋๋ค. ์ฆ, ๋ค๋ฅธ ํด๋์ค์์ ์์ํ์ฌ ์ฌ์ ์๋ฅผ ํ ์ ์๋ ๊ฒ์ด๋ค.์ด๋ ํด๋์ค๋ฅผ ๋ถ๋ณ์ผ๋ก ๋ง๋ค์ด์ ์์์ ์ํ ๋ณ๊ฒฝ์ ๋ฐฉ์งํ๋ค. ๋ํ์ ์ธ ํด๋์ค๋ก Integer์ ๊ฐ์ ๋ฉํผ(Wrapper) ํด๋์ค, String ํด๋์ค๊ฐ ์๋ค. ํด๋์ค ์ค๊ณ์ ์ฌ์ ์ ์ฌ๋ถ๋ฅผ ์๊ฐํด์ ์ฌ์ ์ ๋ถ๊ฐ๋ฅํ๊ฒ ์ฌ์ฉํ๊ณ ์ถ๋ค๋ฉด final๋ก ๋ฑ๋กํ๋๊ฒ ์ถํ ์ ์ง๋ณด์์ฐจ์์์ ์ข๋ค. ๐final Method๋ฉ์.. Java programming 2024. 7. 30. Process ์ Thread ์ฃผ์๊ณต๊ฐ ์ฐจ์ด์ ์ปจํ ์คํธ ์ค์์นญ ์ฐจ์ด ํ๋ก์ธ์ค(Process)์ ์ค๋ ๋(Thread)๋ ์ด์์ฒด์ ์์ ์์ ์ ์ํํ๋ ๊ธฐ๋ณธ ๋จ์์ด๋ค. ํ๋ก์ธ์ค(Process)ํ๋ก์ธ์ค๋ ์คํ ์ค์ธ ํ๋ก๊ทธ๋จ์ ์ธ์คํด์ค๋ฅผ ์๋ฏธํ๋ค. ๊ฐ๊ฐ์ ํ๋ก์ธ์ค๋ ๋ ๋ฆฝ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ์์ ์ ์์(๋ฉ๋ชจ๋ฆฌ, ํ์ผ ํธ๋ค ๋ฑ)์ ๊ฐ์ง๊ณ ์๋ค. ์คํ๋๊ธฐ ์ ์คํํ ์ ์๋ ํ์ผ์ ํ๋ก๊ทธ๋จ์ด๋ผ๊ณ ํ๊ณ ํ๋ก์ธ์ค๋ ํ๋ก๊ทธ๋จ์ ์คํ์์ผ ์ ์ ์ธ ํ๋ก๊ทธ๋จ์ด ๋์ ์ผ๋ก ๋ณํ์ฌ ์คํ๋๋ ์ํ๋ฅผ ๋งํ๋ค. ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ๊ฐ๊ฐ์ ํ๋ก์ธ์ค๋ ๋ ๋ฆฝ๋ ์ฃผ์ ๊ณต๊ฐ์ ๊ฐ์ง๋ฉฐ, ๋ค๋ฅธ ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ง์ ์ ๊ทผํ ์๋ ์๋ค.1. ํ ์คํธ(์ฝ๋) ์์ญ์คํํ ํ๋ก๊ทธ๋จ ์ฝ๋๊ฐ ์ ์ฅ๋๋ ์์ญ๋ณดํต ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ์ค์ ๋๋ฉฐ, ์ฌ๋ฌ ํ๋ก์ธ์ค์์ ๊ณต์ ํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ๋์ผํ ํ๋ก๊ทธ๋จ์ ์คํํ๋ ์ฌ๋ฌ ์ธ์คํด์ค๋ .. Computer Science/Operating System 2024. 7. 27. ๋ฌด์ค๋จ ๋ฐฐํฌ(Zero-downtime Deployment) ์ ๋ต ๐ฉ๊ฐ์๋ค์ด ํ์(Downtime)์ ์์คํ , ์๋ฒ, ๋คํธ์ํฌ, ์ ํ๋ฆฌ์ผ์ด์ ๋๋ ์๋น์ค๊ฐ ์ ์์ ์ผ๋ก ์๋ํ์ง ์๋ ์๊ฐ์ ์๋ฏธํฉ๋๋ค. ์ฆ, ์ฌ์ฉ์๊ฐ ํด๋น ์์คํ ์ด๋ ์๋น์ค๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ํ๋ฅผ ๋งํฉ๋๋ค. ๋ค์ด ํ์์ ๊ณํ๋ ๊ฒ์ผ ์๋ ์๊ณ , ์๊ธฐ์น ์์ ๋ฌธ์ ๋ก ๋ฐ์ํ ์๋ ์์ต๋๋ค. ๋ค์ด ํ์์ ๋น์ฆ๋์ค ์ด์์ ์น๋ช ์ ์ธ ์ํฅ์ ๋ฏธ์น ์ ์๊ธฐ ๋๋ฌธ์ ์ต์ํํ๋ ค๋ ๋ ธ๋ ฅ์ด ์ค์ํฉ๋๋ค.๋ฌธ์ ๋ฅผ ์๋น์ค๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด ๋ฐฐํฌํ๋ ๊ณผ์ ์์๋ ๋ค์ด ํ์์ด ๋ฐ์ํ ์ ์๋ค๋ ์ ์ ๋๋ค. ๋ฒ์ 1์ด ์ด์ฉ๋๊ณ ์๋ ์ํฉ์์ ๋ฒ์ 2๋ฅผ ๋ฐฐํฌํ๋ฉด, ๋ฒ์ 1์ด ์ข ๋ฃ๋๊ณ ๋ฒ์ 2๊ฐ ์คํ๋๋ ๋์ ๋ค์ดํ์์ด ๋ฐ์๋ฉ๋๋ค. ์ด๋ฌํ ๋ค์ดํ์์ ์ต์ํ ์์ผ์ ๋ฐฐํฌํ๋ ๋ฐฉ๋ฒ์ด ๋ฌด์ค๋จ ๋ฐฐํฌ์ ๋๋ค. ๋ฌด์ค๋จ ๋ฐฐํฌ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐฐํฌํ ๋ ์๋น์ค์ .. DevOps/CI&CD 2024. 7. 23. CI/CD ๋ ๋ฌด์์ธ๊ฐ? CI / CDํด๋ผ์ฐ๋ ์ปดํจํ ์๋น์ค๋ฅผ ์ด์ฉํ์ฌ ๊ฐ์ ํ๊ฒฝ์ ์ฝ๋๋ฅผ ํตํฉํ์ฌ ๋ฐฐํฌํ๋ ๊ฒ์ CI/CD ๋ผ๊ณ ๋ถ๋ฆ ๋๋ค. CI/CD๋ Continuous Integration(์ง์์ ํตํฉ)๊ณผ Continuous Deployment(์ง์์ ๋ฐฐํฌ) ๋๋ Continuous Delivery(์ง์์ ์ ๋ฌ)๋ฅผ ํฌํจํ๋ ์ํํธ์จ์ด ๊ณตํ ๋ฐฉ๋ฒ๋ก ์ผ๋ก์, CI/CD๋ ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ์๋ํํ๊ณ , ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ ์์ฃผ, ๋ ์ ๋ขฐํ ์ ์๊ฒ ๋ฐฐํฌํ ์ ์๋๋ก ๋์์ค๋๋ค. ์ด๋ ๊ฐ๋ฐ ์ฃผ๊ธฐ๋ฅผ ๋จ์ถํ๊ณ , ํ์ง์ ๋์ด๋ฉฐ, ์ฌ์ฉ์์๊ฒ ๋ ๋น ๋ฅด๊ฒ ๊ฐ์น๋ฅผ ์ ๊ณตํ ์ ์๊ฒ ํฉ๋๋ค.1. CI - Continuous Integration(์ง์์ ํตํฉ)์ง์์ ํตํฉ์ ๊ฐ๋ฐ์๋ค์ด ์์ฑํ ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ ๊ธฐ์ ์ผ๋ก, ํต์์ ์ผ๋ก๋ ํ๋ฃจ์.. DevOps/CI&CD 2024. 7. 17. String ํด๋์ค์ replace() ์ replaceAll() ์ฐจ์ด (feat. replaceFirst()) ๊ฐ์์ฝ๋ฉ ํ ์คํธ ์คํฐ๋๋ฅผ ํ๋ค๊ฐ String ํด๋์ค์ replace() ๋ฉ์๋์ replaceAll() ์ ์ฐฉ๊ฐํด์ ๊ธ์ ์ฐ๊ฒ ๋๋ค. https://school.programmers.co.kr/learn/courses/30/lessons/17683 ํ๋ก๊ทธ๋๋จธ์ค์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.programmers.co.kr ํด๋น ๋ฌธ์ ์์ ๊ธ์๋ฅผ ๋ค๋ฅธ ๊ธ์๋ก ๋ฐ๊ฟ์ผํ๋ ์ผ์ด ์์๋๋ฐ, ํด๋นํ๋ ๋ชจ๋ ๊ธ์๋ฅผ ๋ค๋ฅธ ๊ธ์๋ก ๋ฐ๊ฟ์ผํ๋ค. ๋น์ฐํ replace ๊ด๋ จ ํจ์๋ฅผ ์๊ธฐ์ replaceAll() ์ ์จ์ ํ์ผ ๋ฌธ์์ด์ ์๋ก์ด ๋ฌธ์์ด๋ก ๋ฐ๊ฟ์ฃผ๋ ค๊ณ ํ๋ค. ํ์๊ณผ ํ์ด ๊ณต์ ๋ฅผ ํ๋๋ฐ, ํ์์ re.. Java programming 2024. 7. 7. @RequestBody, @RequestParam, @PathVariable, @ModelAttribute์ ์ฐจ์ด ์คํ๋ง ํ๋ ์์ํฌ์์ HTTP ์์ฒญ ๋ฐ์ดํฐ๋ฅผ ์ปจํธ๋กค๋ฌ ๋ฉ์๋๋ก ๋งคํํ๋ ๋ฐฉ๋ฒ์ ๋ค์ํ๋ค. ๊ฐ๊ฐ์ ์ ๋ ธํ ์ด์ ์ ๋ค๋ฅธ ์ ํ์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค. ๋ค์์ @RequestBody, @RequestParam, @PathVariable, @ModelAttribute์ ์ฐจ์ด์ ์ฌ์ฉ ๋ฐฉ๋ฒ๊ณผ ๋ด๋ถ์ ์๋ ๋ฐฉ์์ ๋ํด์ ๋ค๋ค๋ณด์๋ค.@RequestBody์ค๋ช @RequestBody๋ HTTP ์์ฒญ ๋ณธ๋ฌธ์ ๊ฐ์ฒด์ ๋งคํํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.์ฃผ๋ก JSON, XML ๋ฑ์ ํฌ๋งท์ผ๋ก ์ ์ก๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฒด๋ก ๋ณํํ ๋ ์ฌ์ฉ๋๋ค. JSON ๋ฐ์ดํฐ ๊ฒฝ์ฐ HttpMessageConverter ์ธํฐํ์ด์ค์ ๊ตฌํ์ฒด MappingJackson2HttpMessageConverter ํด๋์ค๋ฅผ ํตํด ์์ฒญ ๋ณธ๋ฌธ์ ์ฝ๊ณ , ํด๋น ๊ฐ์ฒด๋ก ๋ณํํ๋ค. .. Framework/Spring Framework 2024. 6. 30. JPA ์ํฐํฐ ์ํ (์๋ช ์ฃผ๊ธฐ) JPA์ ์ํฐํฐ ์ํTransient: ์ํฐํฐ๊ฐ ์์์ฑ ์ปจํ ์คํธ์ ๊ด๋ฆฌ๋์ง ์๋ ์ํ์ด๋ค. ์๋ก์ด ์ํฐํฐ ๊ฐ์ฒด๋ฅผ ์์ฑํ์ง๋ง ์์ง ์์์ฑ ์ปจํ ์คํธ์ ์ถ๊ฐ๋์ง ์์๋ค.User user = new User();user.setName("John Doe");// user๋ transient ์ํPersistent: ์ํฐํฐ๊ฐ ์์์ฑ ์ปจํ ์คํธ์ ์ํด ๊ด๋ฆฌ๋๋ ์ํ์ด๋ค. ์ด ์ํ์์๋ ์ํฐํฐ์ ๋ณ๊ฒฝ ์ฌํญ์ด ์์์ฑ ์ปจํ ์คํธ์ ์ํด ์ถ์ ๋๊ณ , ํธ๋์ญ์ ์ด ์ปค๋ฐ๋ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์๋๋ค.entityManager.persist(user);// user๋ persistent ์ํDetached: ์ํฐํฐ๊ฐ ์์์ฑ ์ปจํ ์คํธ์ ์ํด ๋ ์ด์ ๊ด๋ฆฌ๋์ง ์๋ ์ํ์ด๋ค. ์ฃผ๋ก ํธ๋์ญ์ ์ด ์ข ๋ฃ๋๊ฑฐ๋ ์ํฐํฐ ๋งค๋์ ๊ฐ ๋ซํ ๋ ๋ฐ์ํ๋ค.en.. Framework/Spring Framework 2024. 6. 6. ์ด์ 1 2 3 4 5 6 ยทยทยท 20 ๋ค์