์คํ๋ง์์ h2 ์ฌ์ฉ
h2
h2๋ ์ธ๋ฉ๋ชจ๋ฆฌ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์คํ๋ง ํ๋ก์ ํธ๋ฅผ ์ฌ์ฉํ ๋ ์์ฃผ ์ฐ์ธ๋ค.
h2์ ํน์ง ๋ฐ ์ฅ์
- ์ธ๋ฉ๋ชจ๋ฆฌ DBMS ์ค HSQL(HyperSQL)
- ๋ณ๋์ ์ค์น๊ฐ ํ์ ์๋ค.
- ๊ฐ๋จํ ์์กด์ฑ ์ถ๊ฐ๋ง์ผ๋ก ์ฌ์ฉํ ์ ์์
- Maven ๊ธฐ๋ฐ์ ํ๋ก์ ํธ์์
pom.xml
์ HSQL์ ๋ํ ์์กด์ฑ ์ถ๊ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅ - Gradle ๊ธฐ๋ฐ์ ํ๋ก์ ํธ์์
build.gradle
์์com.h2database:h2
์์กด์ฑ ์ถ๊ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅ - ๋ฉ๋ชจ๋ฆฌ์์ ์คํ -> ์ ํ๋ฆฌ์ผ์ด์ ์ ์ข ๋ฃํ๊ณ ๋ค์ ์์ํ๋ฉด ์ด๊ธฐํ๋จ
์ด ํฌ์คํธ์์ Gradle ๊ธฐ๋ฐ์ ์คํ๋ง์์ h2๋ฅผ ์ฌ์ฉํด๋ณด์.
build.gradle
dependencies {
/...
compile('com.h2database:h2')
/...
}
์์ ๊ฐ์ด build.gradle์ ์์กด์ฑ์ ์ถ๊ฐํด ์ฃผ๊ณ Gradle์ ๋ฐ์ํด ์ค๋ค.
์ฟผ๋ฆฌ ๋ ๋ฆฌ๊ธฐ
๊ฐ์ ๊ฐ๋ฐํ๋ ๋ฐฉ์์ผ๋ก ์ฟผ๋ฆฌ๋ฅผ ๋ ๋ฆฐ๋ค.
์ด ํ๋ก์ ํธ์์๋ JPA๋ฅผ ์ด์ฉํด ์ฟผ๋ฆฌ๋ฅผ ๋ ๋ ธ๋ค.
์น ์ฝ์ ์ต์ ํ์ฑํ
src -> main -> resources -> application.propoerties
์ ๋ค์ด๊ฐ ๋ค, ๋ค์ ์ต์ ์ ์ ๋ ฅํด ์ค๋ค.
spring.h2.console.enabled=true
์ ์
๋ก ์ ์ํ๋ค.
JDBC URL์ด jdbc:h2:mem:testdb
์ธ์ง ํ์ธํ๋ค.
๋ค๋ฅด๋ค๋ฉด ์ URL๋ก ์์ ํด ์ค ๋ค Connect
๋ฅผ ํด๋ฆญํ๋ค.
์์ ๊ฐ์ด ์คํ๋๊ณ , ์ฟผ๋ฆฌ๋ฅผ ๋ ๋ ธ๋ ํ ์ด๋ธ์ด ์์ฑ๋์๋ค.
ํ ์ด๋ธ์ ๋๋ฅด๋ฉด ๋ชฉ๋ก์ ์กฐํํ ์ ์๋ ์ฟผ๋ฆฌ๋ฌธ์ด ๋์ค๊ณ , ์๋จ์ Run์ ๋๋ฅด๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ค๋ค.
์ข์ธก์ ์๋ ๋ฐ์ดํฐ ๋ฉ๋ด๋ฅผ ๋๋ฅด๋ฉด ๊ฐ ๋ฉ๋ด์ ๋ํ ์ฟผ๋ฆฌ๋ฌธ์ด ๋์ค๊ณ ์ด๋ฅผ Run์ผ๋ก ํ์ธํ ์ ์๋ค.
์ด๊ธฐํ
์ด๋ฌํ ํน์ ์๋ฃ๋ฅผ ๋ฃ์์ ๋, ์๋ฒ๋ฅผ ์ข ๋ฃํ๊ณ ๋ค์ ์คํ์์ผ๋ณด์.
๋ฐ์ดํฐ๊ฐ ์ด๊ธฐํ๋์๋ค.