在Java编程中,可以用URLConnection(HttpURLConnection)获取web资源
String originalurl = "http://www.google.com";
URL url = new URL(originalurl);
URLConnection urlCon = url.openConnection();
(或HttpURLConnection urlCon = (HttpURLConnection)url.openConnection();)
在使用上面语句进行http链接,如果没有超时设置,当在网络异常时经常会出现程序僵死的情况。
这种情况在用浏览器请求web页面时也可能出现,即某一页面一直处于下载状态,无法获得数据也无报错。
通过使用下面的语句进行超时设置即可解决这一问题。
System.setProperty("sun.net.client.defaultConnectTimeout", "60000");
System.setProperty("sun.net.client.defaultReadTimeout", "60000");
//设置连接主机的超时时间和从主机读取数据的超时时间均为1分钟(60000毫秒)。
JDk 1.4及以前的版本可以用上面方法,在以后版本中有更简单的方法,如下:
urlCon.setConnectTimeout(60000);
urlCon.setReadTimeout(60000);
文章出处:http://www.diybl.com/course/3_program/java/javajs/20071018/77938.html