使用钱包实例化Oracle数据源,而无需指定用户名和密码

时间:2019-02-11 14:41:30

标签: java oracle oracle11g datasource oci

我有此数据源,如果我指定用户名,密码和url,该数据源就可以正常工作。

sonar.tests=/path/to/tests

如果我有数据库的钱包地址,如何设置oracle数据源?

        public Connection dataSource() throws SQLException {
          OracleDataSource dataSource = new OracleDataSource();
          dataSource.setUser(userName);
          dataSource.setPassword(password);
          dataSource.setURL(url);
          return dataSource;
        }

我尝试了此操作,但由于登录失败(我返回的用户名密码不匹配)而无法正常工作

jdbc:oracle:oci:@//<ip>:<port>/<db>

1 个答案:

答案 0 :(得分:1)

您必须在JDBC URL中手动定义钱包,例如<highlighting> .............. <formatter name="html" default="true" class="solr.highlight.HtmlFormatter"> <lst name="defaults"> <str name="hl.simple.pre"><![CDATA[<em>]]></str> <str name="hl.simple.post"><![CDATA[</em>]]></str> </lst> <lst name="hl-red"> <str name="hl.simple.pre"><![CDATA[<em class="hl-red">]]></str> <str name="hl.simple.post"><![CDATA[</em>]]></str> </lst> <lst name="hl-green"> <str name="hl.simple.pre"><![CDATA[<em class="hl-green">]]></str> <str name="hl.simple.post"><![CDATA[</em>]]></str> </lst> </formatter> .............. </highlighting> 。例如,假设钱包位于系统上的以下目录中:HttpSolrClient$RemoteSolrException: Error from server at http://localhost:8983/solr: Unknown formatter: hl-green。然后,您将连接定义为SimpleHighlightQuery query = new SimpleHighlightQuery(Objects.requireNonNull(criteria)); HighlightOptions highlightOptions = new HighlightOptions() .addFields(fields) .setSimplePrefix(prefix) .setSimplePostfix(postfix); query.setHighlightOptions(highlightOptions); query.setPageRequest(pageable); return solrTemplate.queryForHighlightPage(MY_CORE, query, MyModel.class);,其中@adwc_sales_low是TNSNAMES.ora文件中已定义的连接,并且TNS_ADMIN字段指向客户端凭证解压缩的目录。

您可以在此处找到更多信息:https://docs.oracle.com/en/cloud/paas/autonomous-data-warehouse-cloud/user/connect-jdbc-thin-wallet.html