Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

217
Visualizações
java.sql.SQLException: acceso denegado para el usuario '"java"'@'localhost' (usando contraseña: SÍ) usando el archivo de propiedades

Entiendo que esto podría ser algo muy básico, pero no estoy seguro de qué me estoy perdiendo exactamente aquí.

Estoy tratando de cargar un archivo de propiedades y tratando de establecer una conexión con MySQL, pero encuentro java.sql.SQLException

Archivo de propiedades:

 database.jdbc.url = jdbc:mysql://localhost:3306/foo database.jdbc.driver = "com.mysql.jdbc.Driver" database.jdbc.username = "java" database.jdbc.password = "whatever"

Código:

 private static final String PROPERTIES_FILE = "MyDatabaseProperties.properties"; private static final Properties PROPERTIES = new Properties(); private static final String PROPERTY_URL = "database.jdbc.url"; //private static final String PROPERTY_DRIVER = "database.jdbc.driver"; private static final String PROPERTY_USERNAME = "database.jdbc.username"; private static final String PROPERTY_PASSWORD = "database.jdbc.password"; static { try { PROPERTIES.load(new FileInputStream(PROPERTIES_FILE)); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } /** * Returns a connection to the database. * * @return A connection to the database. * @throws SQLException If acquiring the connection fails. */ public Connection getConnection() throws SQLException { if (connection == null) { // 1. connection = DriverManager.getConnection(PROPERTIES.getProperty(PROPERTY_URL), PROPERTIES.getProperty(PROPERTY_USERNAME), PROPERTIES.getProperty(PROPERTY_PASSWORD)); // THROWS EXCEPTION // 2. connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/foo", "java", "whatever"); // CONNECTS FINE } System.out.println("Connected!"); return connection; }

Cuando codifico la url , el nombre de username y password , la conexión se establece sin problemas, pero PROPERTIES.getProperty genera una excepción.

 java.sql.SQLException: Access denied for user '"java"'@'localhost' (using password: YES) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836) at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456) at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246) at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228) at core.DatabaseLoader.getConnection(DatabaseLoader.java:74) at app.AppMain.main(AppMain.java:22)
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

La sintaxis del archivo de propiedades no requiere comillas, si las agrega se vuelven parte del valor de la propiedad. Usar

 database.jdbc.driver = com.mysql.jdbc.Driver database.jdbc.username = java database.jdbc.password = whatever
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda