PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

PSQLException:il server ha richiesto l'autenticazione basata su password, ma non è stata fornita alcuna password

La mia ipotesi è che non stai iniettando il tuo fagiolo nel contenitore a molla, quindi usa qualcosa del genere:

@Bean
public DataSource dataSource() {
    String url = "jdbc:postgresql://localhost:5433/<DATABASE_NAME>";

    String username = <USERNAME>;
    String password = <PASSWORD>;

    return DataSourceBuilder
            .create()
            .driverClassName("org.postgresql.Driver")
            .url(url)
            .username(username)
            .password(password)
            .build();
}

A proposito, nel tuo jdbcUrl devi usare DatabaseName, non TableName.

Nota :Penso sia meglio sfruttare il modo in cui Spring Boot ha già tutto configurato automaticamente, quindi ti suggerisco di fare qualcosa del genere:

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

E usa le seguenti proprietà:

spring.datasource.hikari.jdbcUrl=jdbc:postgresql://localhost:5433/blog
spring.datasource.hikari.username=user
spring.datasource.hikari.password=user
spring.datasource.hikari.driverClassName=org.postgresql.Driver

Puoi controllare uno dei miei esempi di lavoro qui:https://github.com/vladucuvoican/simple-blog/blob/master/src/main/resources/application.properties