从java中查找oracle_home的位置

时间:2011-06-08 08:12:47

标签: java oracle

从java中找到oracle home和tnsnames.ora的最佳方法是什么? 实际上我正在尝试获取tns条目列表并将其显示在程序组合框中。

3 个答案:

答案 0 :(得分:2)

没有一些自动搜索。如果您希望Oracle的JDBC驱动程序使用您的tns名称,则必须定义系统属性(-D)oracle.net.tns_admin=<directory where tnsnames.ora is located>。我建议您进行设置以便使用它,ojdbc也可以使用它(如果需要)

答案 1 :(得分:1)

tnsnames.ora位于ORACLE_HOME/network/admin。代码是:

String oracleHome = System.getenv("ORACLE_HOME");
if(oracleHome != null){
     String tnsFilename = oracleHome + File.separatorChar + 
                       "network" + File.separatorChar + 
                       "admin" + File.separatorChar + 
                       "tnsnames.ora";
}

答案 2 :(得分:0)

如果您ORACLE_HOME设置为环境变量,则可以使用System.getenv("ORACLE_HOME");来访问它。

请参阅javadoc