์ค๋์ Spring JDBC์ ์ค์ ํ์ผ์ ํ์ฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๋์ ์ค์ฌ์ผ๋ก ํ์ตํ๊ณ , MySQL๊ณผ ์ฐ๊ฒฐํ๋ ์ค์ต๋ ํจ๊ป ์งํํด๋ณด์๋ค.
Spring์ ์ค์ ๋ฐฉ์์ด ์ ์ ์ต์ํด์ง๊ณ , ์ค์ ์๋น์ค์์ ์ด๋ค ์์ผ๋ก DB๋ฅผ ์ฐ๋ํ๊ณ ๊ด๋ฆฌํ๋์ง ๊ฐ์ ์ก์ ์ ์์๋ ์์ ์ด์๋ค.
๐ ์ค๋ ๋ฐฐ์ด ๋ด์ฉ ์ ๋ฆฌ
๐ท Java ๊ธฐ๋ฐ ์ค์ ๊ณผ Properties ํ์ฉ
XML์ด ์๋ ์๋ฐ ํด๋์ค(@Configuration, @Bean)๋ก ์ค์ ์ ์ ์ํ๋ ๋ฐฉ์๊ณผ, @Value๋ฅผ ํ์ฉํด jdbc.properties ํ์ผ์์ DB ์ ์ ์ ๋ณด๋ฅผ ๋ถ๋ฌ์ค๋ ๊ตฌ์กฐ๋ฅผ ํ์ตํ๋ค.
ํ๊ฒฝ์ ๋ฐ๋ผ ๋ค๋ฅธ ์ค์ ์ ๋ถ๋ฆฌํด์ ๊ด๋ฆฌํ ์ ์๋ค๋ ์ ์ด ์ค๋ฌด์์ ํนํ ์ ์ฉํ๋ค๋ ๊ฑธ ๋๊ผ๋ค.
๐ถ Spring JDBC์ JdbcTemplate ์ฌ์ฉ
JdbcTemplate์ ํ์ฉํด ์ฟผ๋ฆฌ ์คํ, ๋ฐ์ดํฐ ์กฐํ, ์ฝ์ ๋ฑ์ ์์ ์ ๋จ์ํ๊ณ ๋ช ํํ๊ฒ ์ฒ๋ฆฌํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ ๋ค.
Controller → Service → DAO๋ก ํ๋ฆ์ ๊ตฌ์ฑํ๊ณ ,
DAO์์ query ์คํ ๊ฒฐ๊ณผ๋ฅผ RowMapper๋ก VO์ ๋งคํํด ๋ฐํํ๋ ๋ฐฉ์์ด ์ธ์ ๊น์๋ค.
๐งก ๋๋ ์
์ค๋์ ๋จ์ํ ์ฝ๋๋ฅผ ๋ฐ๋ผ ์น๋ ์์ค์ด ์๋๋ผ, Spring์ด ์ ๋ณต์กํ DB ์ฐ๋์ ๋จ์ํ๊ฒ ๋ง๋ค์ด์ฃผ๋์ง ์ง์ ๋๋ ์ ์์๋ ์๊ฐ์ด์๋ค.
ํนํ JdbcTemplate์ ์ฌ์ฉํด ๋ฐ๋ณต์ ์ธ DB ์ฒ๋ฆฌ ๋ก์ง์ ๊ฐ๋จํ๊ฒ ๊ตฌํํ๋ฉด์, ์ฝ๋๊ฐ ํจ์ฌ ๊น๋ํ๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ฌ์์ง๋ค๋ ๊ฑธ ๋๋ ์ ์์๋ค.
์์ง์ ์ค์ ํ์ผ ๊ตฌ์กฐ๊ฐ ๋ณต์กํ๊ฒ ๋๊ปด์ง๊ธฐ๋ ํ์ง๋ง, ํ๋์ฉ ๋ฐ๋ผ๊ฐ๋ฉฐ ์ค์ ์ ๋ถ๋ฆฌํ๊ณ ์ฐ๊ฒฐํ๋ ๊ณผ์ ์ ์ฐ์ตํ๋ค ๋ณด๋ฉด
์ด๋ ์๊ฐ ์์ฐ์ค๋ฝ๊ฒ ๊ตฌ์กฐ๊ฐ ๋จธ๋ฆฟ์์ ๊ทธ๋ ค์ง ๊ฑฐ๋ผ ์๊ฐํ๋ค.
์ด์ ๋ ๋จ์ํ ๊ฐ๋ ๊ณต๋ถ๋ฅผ ๋์ด์, ์ค์ ์๋น์ค ๊ตฌ์กฐ์ ๊ฐ๊น์ด ํํ๋ก Spring์ ์ตํ๊ฐ๋ ๋จ๊ณ์ ์ ์ด๋ ๊ฒ ๊ฐ์ ๋ ๊ธฐ๋๊ฐ ๋๋ค.
'โ๏ธ DevLog > Devcourse' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[DevCourse] ์์ฑํ AI ํ์ฉ ๋ฐฑ์๋ ๋ฐ๋ธ์ฝ์ค 47์ผ์ฐจ (0) | 2025.06.13 |
---|---|
[DevCourse] ์์ฑํ AI ํ์ฉ ๋ฐฑ์๋ ๋ฐ๋ธ์ฝ์ค 45์ผ์ฐจ (1) | 2025.06.11 |
[DevCourse] ์์ฑํ AI ํ์ฉ ๋ฐฑ์๋ ๋ฐ๋ธ์ฝ์ค 44์ผ์ฐจ (1) | 2025.06.10 |
[DevCourse] ์์ฑํ AI ํ์ฉ ๋ฐฑ์๋ ๋ฐ๋ธ์ฝ์ค 43์ผ์ฐจ (0) | 2025.06.10 |
[DevCourse] ์์ฑํ AI ํ์ฉ ๋ฐฑ์๋ ๋ฐ๋ธ์ฝ์ค 42์ผ์ฐจ (1) | 2025.06.10 |