Как подключиться к PostgreSQL в Spring Boot 2 с помощью Bean - PullRequest
0 голосов
/ 18 мая 2018

Я хотел бы подключиться к PostgreSQL, используя бин (@Bean) и Spring Data.

В этом бине я хотел бы использовать свои собственные свойства клиента в файле application.properties, как эти свойства ниже

my.db.user=postgres
my.db.password=root
my.db.url=jdbc:postgresql://localhost:5432/mydb

Я не могу использовать свойства по умолчанию (spring.datasource.url, spring.datasource.username и т. Д.)

Ответы [ 2 ]

0 голосов
/ 18 мая 2018

Spring Boot 2 по умолчанию использует Hikari для управления соединениями.

Итак, вы можете это сделать.

import com.zaxxer.hikari.HikariDataSource;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;

@Configuration
public class DatabaseConfig {

    @Bean
    @Primary
    @ConfigurationProperties("spring.datasource")
    public HikariDataSource dataSource() {
        return DataSourceBuilder.create()
                .type(HikariDataSource.class)
                .build();
    }
}

application.properties

spring.datasource.platform=postgres
spring.datasource.jdbc-url=jdbc:postgresql://localhost:5432/dbname
spring.datasource.username=postgres
spring.datasource.password=123456

Если выхочу использовать tomcat-jdbc, добавьте следующую конфигурацию.

spring.datasource.type=org.apache.tomcat.jdbc.pool.DataSource

Ссылка: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0.0-M2-Release-Notes#default-connection-pool

0 голосов
/ 18 мая 2018

Вы можете создать свой собственный источник данных со своими пользовательскими свойствами базы данных следующим образом.

@Bean
@ConfigurationProperties(prefix="my.db")
public DataSource myDataSource() {
    return DataSourceBuilder.create().build();
}

Посмотрите следующее описание, чтобы сконфигурировать две базы данных для полного примера, здесь объясняется, как вы можете использоватьсобственные свойства пример двух баз данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...