스프링 부트를 이용하여 여러 가지 웹 애플리케이션을 만들거나 공부를 하실 텐데요. 웹 애플리케이션을 만들기 위해서는 반드시 따라오는 부분이 바로 데이터베이스(DB)입니다. 데이터베이스에는 대표적으로 Oracle, Mysql, MariaDB, MS-SQL과 추가적으로 PostgreSQL이 있습니다.
이번 포스팅에서는 PostgreSQL을 접속하기 위한 스프링 부트 설정을 알아볼게요.
스프링 부트 PostgreSQL 설정방법
우선 스프링 부트에서 설정하기 위해서는 아래와 같은 몇 가지 설정을 해야 합니다.
- pom.xml / build.gradle 라이브러리 추가
- application.properties / application.yml
우선은 데이터베이스를 연결해야 하기 때문에 접속할 수 있는 라이브러리를 추가해야 하며 접속 정보를 추가하기 위해서 application.properties 혹은 application.yml에 정보를 작성합니다.
pom.xml / build.gradle 라이브러리 추가
데이터베이스 라이브러리를 추가해줍니다. 이 포스팅에서는 PostgreSQL 라이브러리를 추가해 보도록 하겠습니다. Maven을 사용하시는 분들이 있고 Gradle을 사용하시는 분들이 있기 때문에 추가 방법은 아래와 같이 다르게 해 주시면 됩니다.
// pom.xml 추가 내용
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
// build.gradle 추가 내용
runtimeOnly 'org.postgresql:postgresql'
두 경우 모드 runtime 시점에 dependency를 사용하도록 라이브러리를 추가해 줍니다.
application.properties / application.yml 정보 추가
라이브러리를 추가해 주었다면 이번에는 접속 정보를 추가해 주도록 하겠습니다.
// application.properties
spring.datasource.url=jdbc:postgresql://localhost:5432/testdb
spring.datasource.username=postgres
spring.datasource.password=password
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.properties.hibernate.format_sql=true
// application.yml
spring:
datasource:
password: password
url: jdbc:postgresql://localhost:5432/testdb
username: postgres
jpa:
hibernate:
ddl-auto: create-drop
properties:
hibernate:
dialect: org.hibernate.dialect.PostgreSQLDialect
format_sql: true
show-sql: true
properties 파일과 yml 파일은 구분자를 점(.)으로 하는지 아니면 콜론(:)으로 하는지에 따라서 다릅니다. 다만 yml을 요즘 더 선호하는 이유는 값을 구분하기 쉽고 중복된 문자들을 반복해서 작성하지 않아도 된다는 점에서 눈에 더 잘 들어온다는 것입니다.
이번 포스팅에서는 간단하게 PostgreSQL을 사용하기 위해서 설정하는 방법에 대해서 알아보았습니다. 이제 데이터베이스를 사용 가능하니 여러 가지 프로젝트를 해볼 수 있을 것 같네요. 도움이 되셨으면 합니다. 이상입니다.
'쿤즈 Dev > Spring Boot' 카테고리의 다른 글
[Spring Boot] Repository 테스트 코드 작성하기(feat. Kotlin) (0) | 2022.06.04 |
---|---|
[Spring Boot] HttpMediaTypeNotAcceptableException 에러 해결 방법(트러블 슈팅) (0) | 2022.04.22 |
[Spring Boot] 스프링 부트 profile 설정(스프링 부트 2.4.0 이후) (0) | 2022.04.18 |
[Spring Boot] Exception 지원되지 않는 문자 집합(클래스 경로에 orai18n.jar 추가) (0) | 2022.03.22 |
[Spring Boot] Mybatis 사용시 "[xX][mM][lL]"과 일치하는 처리 명령 대상은 허용되지 않습니다 해결방법 (0) | 2022.03.11 |
댓글