谁能告诉我从 Sqlplus 登录时使用的主机字符串字段在 jdbc 中是否有任何作用?
最佳答案
这取决于 JDBC URL 中使用的数据库说明符。对于大多数用途,通常不需要主机字符串(或更正确地称为网络服务名称),因为在确定要连接到的 Oracle 实例时不会读取 tnsnames.ora 文件中的条目。大多数使用 JDBC 的开发人员都使用不需要此功能的数据库 URL 方案。
有关 Oracle 数据库服务的信息通常从 JDBC URL 本身读取,对于 Oracle,该信息具有以下表示法:
jdbc:oracle:<driver_type>:[username/password]@database_specifier
用户名和密码是可选的;还有其他方法来指定用户名和密码。驱动程序利用数据库说明符字段中指定的信息来确定 Oracle 监听器的位置,因此无需使用具有显式连接描述符的单独 Oracle 主目录来定位数据库服务。
Oracle Database JDBC Developer's Guide列出可以使用的所有可能的数据库说明符。在大多数场景中,使用瘦式服务名称语法,其中不需要网络服务名称(并且将指定数据库的实际服务名称)。唯一的异常(exception)是在源代码中指定了 TNSNames 别名
,并且使用 oracle 指定了
属性。tnsnames.ora
文件的位置。 .net.tns_admin
关于java - Sqlplus主机字符串在jdbc中重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6235176/