差異處
這裏顯示兩個版本的差異處。
Both sides previous revision 前次修改 下次修改 | 前次修改 | ||
java:basic:urlconnection [2016/06/30 22:33] 127.0.0.1 外部編輯 |
java:basic:urlconnection [2023/06/25 09:48] (目前版本) |
||
---|---|---|---|
行 2: | 行 2: | ||
====== URLConnection ====== | ====== URLConnection ====== | ||
===== Problem ===== | ===== Problem ===== | ||
- | URL的openStream與URLConnection的openConnection將會有兩個連線,如果是在有連線數限制的伺服器上,將會造成問題。 | + | URL的openStream與URLConnection的getLastModified後將會有兩個連線,如果是在有連線數限制的伺服器上,將會造成問題。 |
<code java> | <code java> | ||
public static void main(String[] args) { | public static void main(String[] args) { | ||
行 21: | 行 21: | ||
</code> | </code> | ||
===== How to? ===== | ===== How to? ===== | ||
- | 最簡單作法就是直接使用URLConnection的getInputStream: | + | 最簡單作法就是重複使用URLConnection所建立出來的連線: |
<code java> | <code java> | ||
public static void main(String[] args) { | public static void main(String[] args) { | ||
行 38: | 行 38: | ||
} | } | ||
</code> | </code> | ||
- | 另一個方法就是避免URL的openStream與URLConnection的openConnection同時使用即可。在連線的釋放,我是直接close InputStream;假如有cast為HttpURLConnection可以使用disconnect。 | + | 另一個方法就是避免URL的openStream與URLConnection的操作同時使用即可。在連線的釋放,我是直接close InputStream;假如有cast為HttpURLConnection可以使用disconnect。 |
===== Refernce ===== | ===== Refernce ===== | ||
* [[http://kingori.co/minutae/2013/04/httpurlconnection-disconnect/|Do we need to call HttpURLConnection.disconnect()?]] | * [[http://kingori.co/minutae/2013/04/httpurlconnection-disconnect/|Do we need to call HttpURLConnection.disconnect()?]] |