Development

Springboot - PostgreSQL - DataSource - Maven 연동

아무로레이·2022년 6월 29일·조회 5,625

1. 배경

Springboot 기반으로 PostgreSQL 연동하여 작업 실행.


2. Maven Dependency

<dependency>
  <groupid>org.postgresql</groupid>
  <artifactid>postgresql</artifactid>
</dependency></pre>

3. application.properties에 JDBC 설정 추가

spring.datasource.hikari.jdbcUrl=jdbc:postgresql://[주소:포트/DB이름]
spring.datasource.hikari.username=[계정]
spring.datasource.hikari.password=[패스워드]
spring.datasource.hikari.pool-name=[풀이름]

4. DataSource 설정

import javax.sql.DataSource;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;

@Configuration
public class DatabaseConfig {
	@Bean
	@ConfigurationProperties(prefix = "spring.datasource.hikari")
	public HikariConfig hikariConfig() {
		return new HikariConfig();
	}
	
	@Bean
	public DataSource dataSource() {
		return new HikariDataSource(hikariConfig());
	}
}

5. 실제 코드 부분

5.1. DataSource

	@Autowired
	private DataSource dataSource;

5.2. 데이터 인서트 예제

	public void add(String key, String value) {
		String sql = "INSERT INTO key_log ";
		sql += " ( key, value )";
		sql += " VALUES ( ?, ? )";
		
		try (Connection conn = dataSource.getConnection();
			PreparedStatement preparedStmt = conn.prepareStatement(sql);) {
			preparedStmt.setString(1, key);
			preparedStmt.setString(2, value);
			preparedStmt.execute();
		} catch (SQLException e) {
			log.error(e.getMessage());
			e.printStackTrace();
		} finally {
                        //
		}

댓글 0

로그인 후 댓글을 남길 수 있습니다.

아직 댓글이 없습니다.