【发布时间】:2021-11-26 22:34:48
【问题描述】:
我正在为命令行运行程序和 Web 应用程序开发 Spring Boot。这两个应用都需要用预言机钱包实现,所以我实现了预言机钱包。命令行运行程序能够使用 Oracle 数据源使用 spring jdbc 模板连接到数据库,但相同的配置无法为数据源对象创建 bean。当使用数据库用户名和密码实现相同时,我可以连接。
我正在从这篇文章中获得帮助 - [Connect to Oracle DB from Spring-jdbc with Oracle Wallet authentification
与代码类似,
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)))");
ds.setConnectionProperties( props );
ds.setURL("jdbc:oracle:thin:/@dbAlias"); //dbAlias should match what's in your tnsnames
return ds;
我从启动应用程序的 application.properties 设置了所有属性,并且在创建数据源时遇到空指针异常。
在这方面的任何指针或帮助将不胜感激。
【问题讨论】: