Home
>
Spring
>
๐[Spring] spring.jpa.properties.hibernate.dialect์ด๋ ๋ฌด์์ผ๊น์?
Spring
Framework
๐[Spring] spring.jpa.properties.hibernate.dialect์ด๋ ๋ฌด์์ผ๊น์?
-
spring.jpa.properties.hibernate.dialect
๋ Spring Boot ์ ํ๋ฆฌ์ผ์ด์
์์ Hibernate๊ฐ ์ฌ์ฉํ๋ SQL(Structured Query Language) ๋ฐฉ์ธ(dialect)์ ์ง์ ํ๋ ์ค์ ์
๋๋ค.
-
Hibernate Dialect๋ Hibernate๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ์์ฉํ ๋ ์ฌ์ฉํ๋ SQL ๋ฐฉ์ธ์ ์ ์ํฉ๋๋ค.
- ์ฆ, ์๋ก ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ง๋ค ์ฌ์ฉํ๋ SQL ๋ฌธ๋ฒ์ด๋ ๊ธฐ๋ฅ์ด ์ฝ๊ฐ์ฉ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์, Hibernate๊ฐ ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํน์ฑ์ ๋ง๋ SQL์ ์์ฑํ๋๋ก ๋๋ ์ญํ ์ ํฉ๋๋ค.
1๏ธโฃ ์ ํ์ํ๊ฐ์?
- ์๋ก ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ SQL(Structured Query Language) ๋ฌธ๋ฒ์ด๋ ๊ธฐ๋ฅ์ด ์กฐ๊ธ์ฉ ๋ค๋ฆ
๋๋ค.
- ์๋ฅผ ๋ค์ด, MySQL, Oracle, PostgreSQL, SQL Server ๋ฑ์ ์ผ๋ถ SQL ๋ฌธ๋ฒ์ด๋ ํจ์์ ์ง์ ๋ฐฉ์์ด ๋ค๋ฅผ ์ ์์ต๋๋ค.
- Hibernate๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋
๋ฆฝ์ฑ์ ์ ์งํ๊ธฐ ์ํด ๋ค์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ง์ถฐ ๋์ํ ์ ์๋๋ก ์ค๊ณ๋์์ต๋๋ค.
- ๊ทธ๋ฌ๋ ์ด๋ฅผ ์ํด ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ง๋ ์ ์ ํ SQL(Structured Query Language)์ ์์ฑํด์ผ ํ๋ฉฐ, ์ด๋ฅผ ์ํด Dialect๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- Hibernate Dialect๋ ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ง์ถฐ SQL ์ฟผ๋ฆฌ๋ฅผ ์ต์ ํํ๊ฑฐ๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํนํ๋ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋๋ก ํฉ๋๋ค.
2๏ธโฃ ์ค์ ๋ฐฉ๋ฒ.
- Spring Boot์์
spring.jpa.properties.hibernate.dialect
๋ฅผ application.properties
๋๋ application.yml
ํ์ผ์ ์ค์ ํ์ฌ, ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ง๋ ๋ฐฉ์ธ(dialect)์ ๋ช
์ํ ์ ์์ต๋๋ค.
๐ application.properties
ํ์ผ์์ ์ค์ .
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
๐ application.yml
ํ์ผ์์ ์ค์ .
spring:
jpa:
properties:
hibernate:
dialect: org.hibernate.dialect.MySQLDialect
3๏ธโฃ ๋ํ์ ์ธ Hibernate Dialect ์์.
1๏ธโฃ MySQL
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
2๏ธโฃ PostgreSQL
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
3๏ธโฃ Oracle
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.Oracle12cDialect
4๏ธโฃ H2(In-Memory Database)
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect
5๏ธโฃ SQL Server
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.SQLServerDialect
4๏ธโฃ ์๋ ์ค์ .
- Spring Boot๋ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ
spring.datasource.url
์์ฑ์ ์ค์ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค URL์ ๊ธฐ๋ฐ์ผ๋ก ์ ์ ํ Hibernate Dialect๋ฅผ ์๋์ผ๋ก ์ค์ ํฉ๋๋ค.
- ๊ทธ๋์ ๋ณดํต
spring.jpa.properties.hibernate.dialect
๋ฅผ ๋ช
์์ ์ผ๋ก ์ค์ ํ ํ์๋ ์์ต๋๋ค.
- ๊ทธ๋ฌ๋ ํน์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฒ์ ์ ๋ง๋ ํนํ๋ ์ต์ ํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ฑฐ๋, ์๋ ์ค์ ์ด ์ ๋๋ก ๋์ํ์ง ์๋ ๊ฒฝ์ฐ์๋ ์ด ์ค์ ์ ๋ช
์์ ์ผ๋ก ์ ์ํด์ผ ํฉ๋๋ค.
5๏ธโฃ Hibernate Dialect์ ์ญํ .
1๏ธโฃ SQL ๋ฌธ๋ฒ ์ต์ ํ.
- ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ง๋ SQL ๋ฌธ๋ฒ์ ์ฌ์ฉํ๋๋ก ํฉ๋๋ค.
- ์๋ฅผ ๋ค์ด, MySQL๊ณผ Oracle์์ ์๋ ์ฆ๊ฐ ํ๋(autoincrement)๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ด ๋ค๋ฆ
๋๋ค.
- Hibernate๋ ์ด ์ฐจ์ด์ ์ Dialect๋ฅผ ํตํด ์ฒ๋ฆฌํฉ๋๋ค.
2๏ธโฃ ๋ฐ์ดํฐ ํ์
๋งคํ.
- ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์๋ก ๋ค๋ฅธ ๋ฐ์ดํฐ ํ์
์ ์ง์ํฉ๋๋ค.
- Dialect๋ ์๋ฐ์ ๋ฐ์ดํฐ ํ์
์ ํด๋น ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ง์ํ๋ ๋ฐ์ดํฐํ์
์ผ๋ก ๋ณํํฉ๋๋ค.
3๏ธโฃ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํนํ ๊ธฐ๋ฅ.
- ์ผ๋ถ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ํน์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ, Dialect๋ ์ด๋ฌํ ๊ธฐ๋ฅ์ ํ์ฉํ ์ ์๋๋ก ์ต์ ํ๋ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํฉ๋๋ค.
- ์๋ฅผ ๋ค์ด, PostgreSQL์ ์ํ์ค๋ MySQL์
LIMIT
์ ๋ค์ด ๊ทธ ์์
๋๋ค.
6๏ธโฃ ์์ฝ.
-
spring.jpa.properties.hibernate.dialect
๋ Hibernate๊ฐ ์ฌ์ฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐฉ์ธ(Dialect)์ ์ ์ํ๋ ์ค์ ์
๋๋ค.
- ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ SQL(Structured Query Language) ๋ฌธ๋ฒ์ด๋ ๊ธฐ๋ฅ์ด ์ฝ๊ฐ์ฉ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์, Hibernate๋ Dialect๋ฅผ ์ฌ์ฉํด ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ง๋ SQL์ ์์ฑํฉ๋๋ค.
- Spring Boot๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค URL์ ํตํด ์๋์ผ๋ก ์ ์ ํ Dialect๋ฅผ ์ค์ ํ๋ ค๊ณ ์๋ํ์ง๋ง, ๋ช
์์ ์ผ๋ก ์ด ์ค์ ์ ์ง์ ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ์์ฉ์ ์ต์ ํํ ์๋ ์์ต๋๋ค.