Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我应该对传递给java.sql.DriverManager的getConnection方法的URL进行URL编码吗?_Java_Oracle_Url_Jdbc - Fatal编程技术网

我应该对传递给java.sql.DriverManager的getConnection方法的URL进行URL编码吗?

我应该对传递给java.sql.DriverManager的getConnection方法的URL进行URL编码吗?,java,oracle,url,jdbc,Java,Oracle,Url,Jdbc,我正在编写的程序从.properties文件加载连接参数,并使用它们连接到几个不同的数据库 因此: URL转义是否有必要 URL编码的需要是否取决于驱动程序? -如果有的话- Oracle JDBC驱动程序是否特别需要它 一点背景知识(并非必须阅读): 文档中说要提供一个URL,其格式看起来确实与普通URL类似(无论如何,大多数情况下),但我从未见过任何人使用java.net.urlcoder。每个人似乎都在向方法传递字符串。 诚然,我看到的每个示例都是硬编码的字符串文字(因此运行时转义方法

我正在编写的程序从.properties文件加载连接参数,并使用它们连接到几个不同的数据库

因此:

  • URL转义是否有必要
  • URL编码的需要是否取决于驱动程序? -如果有的话- Oracle JDBC驱动程序是否特别需要它
一点背景知识(并非必须阅读): 文档中说要提供一个URL,其格式看起来确实与普通URL类似(无论如何,大多数情况下),但我从未见过任何人使用java.net.urlcoder。每个人似乎都在向方法传递字符串。 诚然,我看到的每个示例都是硬编码的字符串文字(因此运行时转义方法调用是不必要的)


您根本不应该对URL进行URL编码。尽管名称不同,
urlcoder
类的目的是对URL参数和POST参数进行编码


然而,您当然应该转义传递给任何期望URL的URL。正确的方法是使用
newuri(null,String,null)。toascistring()
用于正确的URL,而
urlcoder
用于每个参数名称和值。

我知道它非常具体。但我喜欢尽可能不犯错。我们学习的最好方式是失败。编写您的代码并进行尝试。如果不起作用,请添加编码。如果它仍然不起作用,回到我们这里,我们会用棍子戳它(希望能帮助你)好吧,问题是我写这篇文章是为了支持TNS连接,我可能不是最后一个使用它的人;我不知道如何使用它,也不知道将向它传递什么参数。Oracle允许你基本上把整个TNSNAMES.ora文件塞进URL的dexter部分,我担心一些可怜的人在我离开后会被一条神秘的错误信息卡住。很高兴知道。谢谢。:)