我使用Spring-jdbc和org.apache.commons.dbcp.BasicDataSource使用用户名和密码进行连接.我想使用BasicDataSource,因为我只有一个连接.我有这个代码:bean class=org.apache.commons.dbcp.BasicDataSource destr...
我使用Spring-jdbc和org.apache.commons.dbcp.BasicDataSource使用用户名和密码进行连接.我想使用BasicDataSource,因为我只有一个连接.
我有这个代码:
<bean class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"
id="dataSource">
<property name="driverClassName" value="${database.driverClassName}" />
<property name="url" value="${database.url}" />
<property name="username" value="${database.username}" />
<property name="password" value="${database.password}" />
</bean>
现在我必须使用基于Oracle Wallet的身份验证,在没有Spring的简单应用程序测试中我没有问题,但我无法将此新身份验证与Spring集成.有谁知道我怎么做?
解决方法:
你提到“简单的应用程序测试”,所以我假设你需要配置你的单元测试.在单元测试配置类中(例如,类TestSpringWebConfig扩展SpringWebConfig),这将使用钱包获得Oracle数据源(奖励:以下使用代理数据库帐户):
System.setProperty("oracle.net.tns_admin", "path/to/your/tnsnames");
OracleDataSource ds = new OracleDataSource();
Properties props = new Properties();
props.put("oracle.net.wallet_location", "(source=(method=file)(method_data=(directory=path/to/your/wallet)))");
/*
Use the following only if you have a proxy user database account instead of a normal DB account
A test user's username could go here though
*/
props.put(OracleConnection.CONNECTION_PROPERTY_PROXY_CLIENT_NAME, "proxy-user-name");
ds.setConnectionProperties( props );
ds.setURL("jdbc:oracle:thin:/@dbAlias"); //dbAlias should match what's in your tnsnames
return ds;
这也假设您在JDK中有以下内容:
在JAVA_HOME / jre / lib / security / java.security中,将以下内容添加到“提供者列表”中:
security.provider.11=oracle.security.pki.OraclePKIProvider
并将以下jar从Oracle添加到JAVA_HOME / jre / lib / ext:
> osdt_cert.jar
> osdt_core.jar
> oraclepki.jar
当然,以上所有假设ojdbc7 jar已经在你的应用程序的类路径中了.
本文标题为:java – 使用Oracle Wallet身份验证从Spring-jdbc连接到Oracle DB
- SpringBoot处理接口幂等性的两种方法详解 2023-01-18
- JVM自定义类加载器在代码扩展性实践分享 2023-01-24
- SpringMVC执行过程详细讲解 2023-05-08
- 更新MongoDB java Driver中的多行 2023-10-31
- SpringCloud Gateway DispatcherHandler调用方法详细介绍 2023-06-17
- Java使用正则表达式进行匹配且对匹配结果逐个替换 2023-05-25
- 执行JAR时java.lang.ClassNotFoundException:com.mysql.jdbc.Driver 2023-11-04
- jsp图片效果大全(图像震动效果、闪烁效果、自动切换图像) 2023-08-02
- spring mvc rest 接口选择性加密解密详情 2023-03-21
- Java实现线程通信的案例讲解 2022-11-12