没有为jdbc找到合适的驱动程序:db2:在java中

Chi*_*rai 2 java jdbc

我正在尝试使用以下java代码连接到远程数据库,但是我收到一条错误消息,指出找不到合适的驱动程序

我在我的项目中包含了所需的db2库:

在此输入图像描述

我在主类中声明了jdbc设置

Settings.loadSettings();

Class.forName("Settings.DB2_JDBC_DRIVER");

Controller con = new Controller();
con.business_logic();
}
Run Code Online (Sandbox Code Playgroud)

然后尝试在另一个类中连接数据库

public Connection getDBConnection()
{
Connection DBConnection = null;
try {
  System.out.println("Connecting to  database " + Settings.DBName + ".");
  String DBURL = "jdbc:db2://" + Settings.DBServer + ":" + Settings.DBPort + 
 "/" + Settings.DBName + ";";
  String decryptedPass = decryptPassString(Settings.DBPass);
  DBConnection = DriverManager.getConnection(DBURL, Settings.DBUser, 
  decryptedPass);
  System.out.println("Database connection successfully established to  
  database " + Settings.DBName + " using user " + Settings.DBUser + ".");
  return DBConnection;
 }
 catch (Exception e) {
  System.out.println("An unexpected error occurred when attempting to 
 establish connection to  database " + Settings.DBName + ". The error was: " 
 + e.getMessage() + "\r\n" + e.getMessage()); }
return DBConnection;
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释我在这里缺少什么?

我收到的错误信息是

尝试建立与数据库DWHER00的连接时发生意外错误.错误是:没有为jdbc找到合适的驱动程序:db2:/

ana*_*ron 6

这条线:

Class.forName("Settings.DB2_JDBC_DRIVER");
Run Code Online (Sandbox Code Playgroud)

理想情况下应该是这样的:

Class.forName("com.ibm.db2.jcc.DB2Driver");
Run Code Online (Sandbox Code Playgroud)

除非您为DB2创建自己的驱动程序.

您将需要用于正在使用的DB2安装的JAR文件.

将它们放在类路径中并进行上述代码更改.它应该工作.


IBM DB2 Universal Driver Type 4

司机类名称:

com.ibm.db2.jcc.DB2Driver 
Run Code Online (Sandbox Code Playgroud)

驱动程序Jar文件:db2jcc.jardb2jcc_license_cu.jar (必须包括这两个罐子)

JDBC URL格式:

jdbc:db2://<host>[:<port>]/<database_name>
Run Code Online (Sandbox Code Playgroud)

JDBC URL示例:

jdbc:db2://127.0.0.1:50000/SAMPLE
Run Code Online (Sandbox Code Playgroud)

IBM DB2 Universal Driver Type 2

司机类名称:

com.ibm.db2.jcc.DB2Driver
Run Code Online (Sandbox Code Playgroud)

驱动程序Jar文件:db2jcc.jardb2jcc_license_cu.jar (必须包括这两个罐子)

JDBC URL格式:

jdbc:db2:<database_name> 
Run Code Online (Sandbox Code Playgroud)

JDBC URL示例:

jdbc:db2:sample 
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!