如何从这个 XML 连接数据构建 JDBC 连接 url?

Posted

技术标签:

【中文标题】如何从这个 XML 连接数据构建 JDBC 连接 url?【英文标题】:how do i build a JDBC connection url from this XML connection data? 【发布时间】:2012-02-17 15:19:38 【问题描述】:

我正在使用 SQL Developer 连接到 Oracle 数据库,连接数据是以 XML 格式提供给我的。我在 SQL Developer 中使用了“导入连接描述符”功能,并且可以正常连接。 XML 如下所示:

<connections>
  <connection>
    <ConnectionType>JDBC</ConnectionType>
    <DeployPassword>false</DeployPassword>
    <user>user1</user>
    <ConnectionName>ccddda</ConnectionName>
    <URL>CCDDDA, CCDDD10A, CCDDD10A.ABCDEF.ABC</URL>
    <RaptorConnectionType>Oracle</RaptorConnectionType>
    <JdbcDriver>oracle.jdbc.driver.OracleDriver</JdbcDriver>
    <PWD>
      <![CDATA[01AB001AB001AB001AB001AB001AB01234]]>
    </PWD>
    <ORACLE_JDBC_TYPE>thin</ORACLE_JDBC_TYPE>
    <PREVIOUS_NAME>ccddd2_11</PREVIOUS_NAME>
  </connection>
</connections>

问题是,我正在尝试使用 JPA 透视图 > Eclipse 中的数据源资源管理器创建数据库连接。

我的问题是,如何从建立连接所需的 XML 中获取 JDBC 值?该对话框要求以下内容:

Select a database manager: Oracle
JDBC driver: Oracle 10 - Oracle Thing Driver Default
SID: db /* selected by default */
Host: ?
Port Number: 1521 /* selected by default */
User name: ? /* I assume it's user1 */
Password: ?
Default Schema: ?
Catalog: User /* selected by default */

非常感谢任何帮助!

谢谢,罗伯

【问题讨论】:

您是否查看过 Oracle SQL Developer 中 CCDDDA 的连接属性对话框?它显示主机名、用户名。默认架构可能是用户名。无法帮助您输入密码 ;-) 在 SQL Developer 中,连接属性为“连接类型:TNS”、“网络别名:CCDDDA、CCDDD10A、CCDDD10A.ABCDEF.ABC”。没有其他信息可以看到。 :( 我猜这个网络别名一定是指向我需要的信息,因为我以前从未见过他的那种东西。我很困惑。 查看您的 TNSNAMES.ORA 文件,但首先尝试:主机:CCDDDA,用户:user1,密码:,架构:user1 啊! TNSNAMES.ORA 是配置网络别名的地方。我在那里找到了主机名,但仍然没有工作。如果您将“查看您的 TNSNAMES.ORA 文件”注释为答案,我会将其标记为“正确答案”。谢谢! 【参考方案1】:

查看以下位置:

Oracle SQL 开发人员连接属性 TNSNAMES.ORA 文件

【讨论】:

以上是关于如何从这个 XML 连接数据构建 JDBC 连接 url?的主要内容,如果未能解决你的问题,请参考以下文章

使用 JDBC 和 persistence.xml

Java与XML 连接池-JDBC 笔记

我可以从 JDBC 连接运行“源”命令(SQL 脚本)吗?

在没有 jdbc 连接字符串的情况下访问 Sonar 服务器及其数据库

如何使下面的jdbc连接配置连接池

mybatis连接mysql(jdbc)常见问题