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