java中的URLConnection如何重用池中的连接

时间:2011-11-25 08:38:55

标签: java

任何人都可以帮我提供URLConnection如何重用连接的示例代码吗?

URLConnection con = new URL("http://www.someurl.com").openConnection();

我正在使用上面的代码来创建URLConnection。 URLConnection将首次打开与指定URL的新连接。但之后它将重用池中的现有连接。有没有证明这一点(我的意思是通过println())?

实际上有没有办法从池中检索连接重用状态?

1 个答案:

答案 0 :(得分:4)

来自java.net.URL javadoc:

  

返回表示与该连接的连接的URLConnection对象   URL引用的远程对象。

     

每次打开一个新连接,通过调用openConnection   此URL的协议处理程序的方法。

     

如果对于URL的协议(例如HTTP或JAR),则存在   public,专门的URLConnection子类属于其中之一   以下包或其中一个子包:java.lang,java.io,   java.util,java.net,返回的连接将是该子类。   例如,对于HTTP,将返回HttpURLConnection ,并且for   JAR将返回JarURLConnection。

因此,对于http协议网址,它将返回HttpURLConnection

来自java.net.HttpURLConnection javadoc:

  

每个HttpURLConnection实例用于发出单个请求但是   与HTTP服务器的底层网络连接可以由其他实例透明地共享

因此可以汇总下划线tcp连接