본문 바로가기

내가 당면한 문제와 해결방안

jpa db config 수정 @SpringBootApplication

약 2일을 허비한 내용. 원래 우리 프로젝트는 multiple datasource 사용하고 있었다. 

 

상황

-> 현재 남아있는 couchbaseconfiguration을 걷어내고 postgres를 적용해야한다.

 

문제

-> 많은 튜토리얼들은 간단한데, 나는 분명 couchbaseconfiguration을 삭제했는데도 ... default 로 설정한 DB를 springboot가 모르겠다는 거다. 

 

해결책

-> @SpringBootApplication (exclude = { DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class})

 

이걸 뺏어야했던거다 ㅠ

미안하다 ~ 스프링부트야~ 제대로 사용할줄도 모르고 스프링부트는 복잡혀 어쩌고 저쩌고 했던 스스로를 반성해 ㅠ

주말엔 좀 공부를 해야겠다 ㅠ 스프링부트는 애노테이션으로 되어있는것이 깜찍하긴하면서도 뭔가 항상 숨겨진것이 많아서 귀찮여

 

application.properties

# POSTGRES
spring.datasource.url=jdbc:postgresql://180.70.98.197:5432/atlasdb
spring.datasource.username=atlas
spring.datasource.password=atlas
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
#spring.jpa.hibernate.ddl-auto=update
spring.jpa.generate-ddl=true
spring.jpa.hibernate.ddl-auto=create
#spring.jpa.show-sql=true


spring.datasource.initialization-mode=always
spring.datasource.initialize=true
spring.datasource.continue-on-error=true
package com.회사.lab.tour.geolocation.config;

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

import javax.sql.DataSource;

@Configuration
public class DataSourceConfig {

    @Bean
    @ConfigurationProperties(prefix="spring.datasource")
    public DataSource getDataSource() {
        DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create();
        dataSourceBuilder.driverClassName("org.postgresql.Driver");
        dataSourceBuilder.url("jdbc:postgresql://아이피:포트/atlasdb");
        dataSourceBuilder.username("atlas");
        dataSourceBuilder.password("atlas");
        return dataSourceBuilder.build();
    }
}

 

개발로 먹고사는데 현재 내 개발 수준은

 

이 사람들 보다도 못하다...!

 

주말에는 

현재 내 개발 무기 수준?

개발로 어쨌든 당분간 먹고 살기위해 좀 돌칼을 갈아보자