๊ธฐ์ฌ์ฃผ๊ธฐ์ ๋ด์ฉ ๋จผ์ Spring Boot๋ฅผ ์ฌ์ฉํ์ฌ ์น ์๋ฒ๋ฅผ ๋ง๋ค์ด ๋ณด๊ฒ ์ต๋๋ค . pom ํ์ผ ์์ <์ข
์์ฑ> ๋ธ๋ก ์ ๋ค์ ์ข
์์ฑ์ ์ถ๊ฐํฉ๋๋ค.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
</dependency>
Spring์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์๋ํ๋ ค๋ฉด ์ฒซ ๋ฒ์งธ ์ข
์์ฑ์ด ํ์ํฉ๋๋ค. ๋ ๋ฒ์งธ ์ข
์์ฑ h2(H2)๋ ๋ค์ด๋ก๋, ์ค์น ๋ฐ ๋ณต์กํ ๊ตฌ์ฑ ์์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์๋ฎฌ๋ ์ดํธํฉ๋๋ค. ์ด์ ์ค์ค๋ก์๊ฒ "๋๋ ๋ฌด์์ด ๋๊ณ ์ถ์๊ฐ? ์ค์ค๋ก ๋ฌด์ธ๊ฐ๋ฅผ ์์ฑํ ์ ์๋ ์์ญ์ด ์ฝ๋์ธ๊ฐ? ์๋๋ฉด ๊ฐ๋ฐ์์ธ๊ฐ?"๋ผ๊ณ ์๋ฌธํด ๋ณด์๊ธฐ ๋ฐ๋๋๋ค. ๊ฐ๋ฐ์๊ฐ ๋๊ณ ์ถ๋ค๋ฉด Spring์ ์๋ฏธ์ ๊ฐ๋
์ ๋ํ ์ข์ ์ฑ
์ ์ฝ ๊ฑฐ๋ ์ต์ํ ์ผ๋ จ ์ ๊ธฐ์ฌ๋ฅผ ์ฝ์ผ์ญ์์ค . ์ง๊ธ ๋น์ฅ ์ธํฐ๋ท์์ ๋น์ด ๋ฌด์์ธ์ง, ์ํฐํฐ, Spring์ ์ข
์์ฑ ์ฃผ์
๋ฐ ๋น ๊ตฌ์ฑ ๋ฐฉ๋ฒ์ ๋ํ ์ ๋ณด๋ฅผ ๊ฒ์ํ ์ ์์ต๋๋ค. ๊ธฐ์ง๋ก ๋์๊ฐ์. ์ ์ฒด ๊ตฌ์ฑ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. resources ์์ application.yml ํ์ผ(์ด๋ฆ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค!)์ ์์ฑํ๊ณ ๋ด์ฉ์ ์ฑ์๋๋ค.
spring:
datasource:
driverClassName: org.h2.Driver
url: jdbc:h2:mem:test;
username: sa
password:
h2:
console:
enabled: true
jpa:
hibernate:
ddl-auto: create
generate-ddl: true
show-sql: false
properties:
hibernate:
dialect: org.hibernate.dialect.H2Dialect
๋ฐ์ดํฐ ์์ค๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. DriverClassName:์ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ ๋ฒ ์ด์ค ์ ํ์ ๋ํ๋
๋๋ค. ์ฐ๋ฆฌ์๊ฒ๋ h2์
๋๋ค. Postgres๋ฅผ ์ค์นํ๋ค๋ฉด rg.postgresql.Driver ๋ฅผ ์์ฑํฉ๋๋ค . url: - ์ด๊ฒ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์๋ ์ฅ์์
๋๋ค. ์ฐ๋ฆฌ์ ๊ฒฝ์ฐ mem (๋ฉ๋ชจ๋ฆฌ์์) ์ด๋ผ๋ ๋จ์ด๋ก ํ์๋๋ ๊ฒ์ฒ๋ผ ํ๋ก์ ํธ ๋ฉ๋ชจ๋ฆฌ์ ์ง์ ์์นํฉ๋๋ค . ์ฆ, ์ ํ๋ฆฌ์ผ์ด์
์ด ๋ค์ ์์๋๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ฑ๋ฉ๋๋ค. ๋ค์ ํ๋ฒ. jdbc:h2:mem:test; ๋์ ์ ํ ์ ์์ต๋๋ค . jdbc:h2:~/test;๋ฅผ ์์ฑํ์ธ์ . , ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ํ๋ก์ ํธ ํด๋์ ์ ์ฅ๋ฉ๋๋ค. ๋ค์ ๋งํ์ง๋ง, Postgres๊ฐ ์ค์น๋์ด ์๋ค๋ฉด jdbc:postgresql://localhost:5432/mydb ์ ๊ฐ์ด ์์ฑํ ๊ฒ์
๋๋ค . ์ด์ jpa : hibernate.ddl-auto: ์ ํ๋ฆฌ์ผ์ด์
์ด ๋ค์ ์์๋ ๋ ๊ธฐ๋ณธ ์คํค๋ง๋ก ์ํํ ์์
์ ์๋ ค์ค๋๋ค. ์ด์ ์ฌ๊ธฐ์ ์์ฑ์ด ์์ต๋๋ค . ์ด๋ ๋ค์ ์์ฑ์ ์๋ฏธํ๋ฉฐ, ์
๋ฐ์ดํธ (๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ถ๊ฐ), ์์ฑ-์ญ์ (์์ ์ ์ญ์ ) ๋ ๊ฐ๋ฅํฉ๋๋ค . ์ต๋ ์ ์ ๋ชจ๋ ๋ผ๋ ๋จ์ด๋ ์ฌ๊ธฐ์๋ ์บ์ฃผ์ผํ์ง ์์ต๋๋ค. ํ์ํ๊ธฐ ๋๋ฌธ์ ์ธํฐ๋ท์์ ์ด์ ๋ํด ์ฝ์ด๋ณด์ธ์. ๋๋จธ์ง ๋จ์ด๋ ์ด์ ์ค์ํ์ง ์์ต๋๋ค. ๋ค์์ผ๋ก ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฑ์ฐ๋ ๋ฐฉ๋ฒ๊ณผ ์์
๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
GO TO FULL VERSION