如何使用 java 验证 localhost 用户名和密码是否正确?

How to verify whether localhost username and password is correct or not using java?

我一直在寻找本地主机(在我的例子中是 XAMPP)用户名和密码的验证,即 'root' 和 ''(空)。假设用户更改了 localhost 用户名和密码,那么我们如何使用 java + SQL QUERY.

进行验证
    //Database credentials
    public static  Connection conn = null;
    public static  Statement stmt = null;   
    public static  String JDBC_DRIVER = "com.mysql.jdbc.Driver";  
    public static  String DB_URL = "jdbc:mysql://localhost/";

    Class.forName("com.mysql.jdbc.Driver");
    conn = DriverManager.getConnection(DB_URL);
    System.out.println("Driver LOADED");    
    conn = DriverManager.getConnection( DB_URL , LH_USERNAME , LH_PASSWORD);
    stmt = conn.createStatement();

有什么方法可以在执行上述其中一项时获得布尔结果

conn = DriverManager.getConnection( DB_URL , LH_USERNAME , LH_PASSWORD);

当此行执行时,如果 DB_URL 、 LH_USERNAME 、 LH_PASSWORD 根据您的数据库不正确,那么您将得到 运行 时间异常可能是 SQLException 。如果有一些变化然后再次验证然后添加以下代码

  Connection conn = null; 
  try{
  Class.forName("oracle.jdbc.driver.OracleDriver");          
  conn = DriverManager.getConnection(DB_URL , LH_USERNAME,LH_PASSWORD); 
  }catch(Exception e) {    
  e.printStackTrace();  
  }

如果出现异常 (conn==null),这意味着您无法连接数据库。如果你没有正确的 DB_URL , LH_USERNAME , LH_PASSWORD 然后你会得到 运行 时间异常当你尝试执行以下行

conn = DriverManager.getConnection(DB_URL , LH_USERNAME,LH_PASSWORD);

可以围

conn = DriverManager.getConnection( DB_URL , LH_USERNAME , LH_PASSWORD);

用这种方式尝试 catch 块:

try { conn = DriverManager.getConnection( DB_URL , LH_USERNAME , LH_PASSWORD); } catch(SQLException e){ if(e.getMessage().startsWith("Access denied for user")){ System.out.println("Error: nont valid user or password"); //you can add return false if you want return false; } }