Java JDBC使用SSL连接到Oracle数据库

Java JDBC使用SSL连接到Oracle数据库,java,oracle,ssl,jdbc,Java,Oracle,Ssl,Jdbc,我已经配置了标准数据库连接,我连接到Oracle数据库。 数据库将配置为使用SSL,这意味着我需要指定服务器证书才能连接 SSL本身的SSL_CLIENT_AUTHENTICATION=FALSE,并配置了Oracle钱包 可以使用JDBC完成吗 这是我当前的代码: Class.forName("oracle.jdbc.OracleDriver"); connection = DriverManager.getConnection("jdbc:oracle:th

我已经配置了标准数据库连接,我连接到Oracle数据库。 数据库将配置为使用SSL,这意味着我需要指定服务器证书才能连接

SSL本身的SSL_CLIENT_AUTHENTICATION=FALSE,并配置了Oracle钱包

可以使用JDBC完成吗

这是我当前的代码:

        Class.forName("oracle.jdbc.OracleDriver");

        connection = DriverManager.getConnection("jdbc:oracle:thin:@192.168.200.96:1521:NNVSDB", "VSU22","VSU22");

您可以在此处找到包含一些文档的pdf: ,第11页和第12页有一些代码示例:

String url = "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=servername)(PORT=2484))(CONNECT_DATA=(SERVICE_NAME=servicename)))"); 
Properties props = new Properties(); 
props.setProperty("user", "scott"); 
props.setProperty("password", "tiger"); 
props.setProperty("javax.net.ssl.trustStore", 
                  "/truststore/ewallet.p12"); 
props.setProperty("javax.net.ssl.trustStoreType","PKCS12"); 
props.setProperty("javax.net.ssl.trustStorePassword","welcome123"); 
Connection conn = DriverManager.getConnection(url, props); 

可能想看看不投票关闭的可能重复,因为这个问题+我的答案已经有4年了,我不确定从那时起情况是否发生了变化/改进。你能弄清楚配置吗?我看到了这个示例,但我使用的是钱包而不是信任商店。是的,你有两种钱包:SSO和PKCS12,您可以为SSO设置属性,其中您甚至不需要密码props.setPropertyjavax.net.ssl.trustStore,/trustStore/cwallet.SSO;setPropertyjavax.net.ssl.trustStoreType,SSO@DavidFaizulaev能否请您发布监听器sqlnet&tnsnames.ora,我正在尝试使用oracle钱包使用ssl配置jdbc,但没有成功