java - SSL DB2 连接失败

标签 java ssl db2 ibm-cloud

我正尝试在 IBM Bluemix 上使用 SSL 连接到 DB2 数据库。

当我第一次尝试不使用 SSL 进行连接时,它不起作用。阅读文档后,我意识到它连接到启用了 SSL 的数据库。

我尝试使用以下代码让它连接到数据库:

public boolean connect() {
  try {
    String url = "jdbc:db2://" + serverName + ":" + port + "/" + dbName+
                 ":securityMechanism=9";    

    connection = DriverManager.getConnection(url, userName, passWord);
    st = connection.createStatement();
    return true;
  } catch (Exception e) {
    System.err.println(e.getMessage());
  }

  return false;
}

我仍然不太确定如何使用上面代码提供的 SSL 证书。

我尝试搜索示例,但大多数解释要么不清楚,要么用于其他数据库系统。

最佳答案

如果您使用的是 Liberty,则会为您生成一个数据源,您可以使用 jndi 查找它。

@Resource(lookup = "jdbc/mydb")
private DataSource myDataSource;
Connection c = myDataSource.getConnection();

"mydb"是 SQLDB 服务的名称

https://developer.ibm.com/bluemix/2014/02/07/java-db2-10-minutes/

关于java - SSL DB2 连接失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32397839/

相关文章:

java - 哈希码实现

java - Postgres 数据类型转换

java - java游戏中按钮的大小

java - Apache http 客户端自签名证书

java - Smack 4 在连接时抛出 "SSLHandshakeException: ValidatorException: SunCertPathBuilderException"

IISExpress 的 SSL 连接/连接重置

database - 如何在 DB2 的特定数据库中获取列表模式

java - JSF/Hibernate/Rest,为什么是空指针?

sql - iSeries DB2 - 有没有办法从插入语句中选择标识值?

sql - 避免在 DB2 中将 String 转换为 Integer 时出错