使用 uri.toURL().openConnection() 是一个好习惯吗?

问题描述 投票:0回答:1

我应该使用

uri.toURL().openConnection();
因为 URL 从 java 20 开始已被弃用

Path path = Paths.get(apiUrl);
URI uri = path.toUri();
        
HttpURLConnection connection = (HttpURLConnection) uri.toURL().openConnection();

那么,这是建立连接的好方法吗?如果没有那么还有什么其他方法可以做到这一点?

java jsp servlets connection
1个回答
0
投票

由于 URL 从 java 20 开始已弃用,我应该使用

uri.toURL().openConnection();
吗?

你好像有什么误解。 类

java.net.URL
并未被弃用。 只有它的构造函数是。 API 文档特别建议使用 URI.toURL() 来获取
URL
实例
,无论是在类级文档还是在每个构造函数的弃用通知中。

如果整个

URL
类已被弃用,那么
URI.toURL()
也会被弃用。 但即使不知何故错过了,
uri.toURL().openConnection()
仍然创建并使用
URL
对象,如果整个类实际上已被弃用,那么这是不可取的。 但事实并非如此。

您可以使用

uri.toURL().openConnection()
打开连接,前提是 URI 适合该目的。 您还可以使用
uri.toURL()
获取对
URL
的引用,将其存储或传送到另一个位置,然后再使用它来打开连接:

   URL url = uri.toURL();

   // ...

   HttpURLConnection connection = (HttpURLConnection) url.openConnection();

我想不出任何形式或数量的贬低会反对其中之一,但不会反对另一个。

© www.soinside.com 2019 - 2024. All rights reserved.