我想在Linux上将Java应用程序与DB2 Express C连接
我使用了这个存储库和maven依赖:
https://app.camunda.com/nexus/content/repositories/public/
<dependency>
<groupId>com.ibm.db2.jcc</groupId>
<artifactId>db2jcc4</artifactId>
<version>10.1.0.4</version>
</dependency>
Java测试代码:
public void testShaEncryptHash() throws Exception
{
try
{
Class.forName("com.ibm.db2.jcc.DB2Driver");
}
catch (ClassNotFoundException e)
{
System.out.println("Please include Classpath Where your DB2 Driver is located");
e.printStackTrace();
return;
}
System.out.println("DB2 driver is loaded successfully");
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rset = null;
boolean found = false;
try
{
conn = DriverManager.getConnection("jdbc:db2:33.182.10.132", "db2inst1", "qwerty");
if (conn != null)
{
System.out.println("DB2 Database Connected");
}
else
{
System.out.println("Db2 connection Failed ");
}
pstmt = conn.prepareStatement("Select * from bo");
rset = pstmt.executeQuery();
if (rset != null)
{
while (rset.next())
{
found = true;
System.out.println("Class Code: " + rset.getString("clcode"));
System.out.println("Name: " + rset.getString("name"));
}
}
if (found == false)
{
System.out.println("No Information Found");
}
}
catch (SQLException e)
{
System.out.println("DB2 Database connection Failed");
e.printStackTrace();
return;
}
}
我在测试代码时遇到此错误:
com.ibm.db2.jcc.am.SqlException: [jcc][10389][12245][4.15.113] Failure in loading native library db2jcct2, java.lang.UnsatisfiedLinkError: no db2jcct2 in java.library.path: ERRORCODE=-4472, SQLSTATE=null
at com.ibm.db2.jcc.am.fd.a(fd.java:680)
at com.ibm.db2.jcc.am.fd.a(fd.java:60)
at com.ibm.db2.jcc.am.fd.a(fd.java:94)
你能帮我解决这个问题吗?
还是有另一种解决方案吗?
P.S 我尝试将链接更新为
conn = DriverManager.getConnection("jdbc:db2//33.181.32.33:50000/SAMPLE", "db2inst1", "qwerty");
现在我
java.sql.SQLException: No suitable driver found for jdbc:db2//33.181.32.33:50000/SAMPLE