gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-01 14:22:38 24 4
gpt4 key购买 nike

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

所以:

  • 是否需要进行网址转义?
  • 是否需要 URL 编码取决于驱动程序?-如果是这样-是否需要专门针对 Oracle JDBC 驱动程序?

一些(并非严格必要阅读)背景:

文档说要提供一个 URL,而且格式确实看起来像普通 URL 的格式(无论如何,大多数时候),但我从未见过有人使用 java.net.URLEncoder。每个人似乎都只是将字符串传递到方法中。当然,我见过的每个示例都是硬编码的字符串文字(因此运行时转义方法调用将是不必要的)。

A link to the Sun- err, Oracle- documentation on DriverManager, for the curious.

最佳答案

您根本不应该对 URL 进行 URL 编码。尽管有其名称,URLEncoder 类的用途是对 URL 参数和 POST 参数进行编码。

但是,您当然应该转义传递给任何需要 URL 的任何内容。正确的方法是使用 new URI(null, String, null).toASCIIString() 表示 URL 本身,并使用 URLEncoder 表示每个参数名称和值。

关于java - 我应该对传递给 java.sql.DriverManager 的 getConnection 方法的 URL 进行 URL 编码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17411438/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com