java设置http请求超时时间

Java 设置Http 请求超时时间 Java中可以使用HttpURLConnection来请求WEB资源。 HttpURLConnection对象不能直接构造,需要通过URL.openConnection来获 得HttpURLConnection对象,示例代码如下 String szUrl “http// URL url new URLszUrl; HttpURLConnection urlCon HttpURLConnectionurl.openConnection; HttpURLConnection是基于HTTP协议的,其底层通过socket通信实现。如果 不设置超时(timeout),在网络异常的情况下,可能会导致程序僵死而不继续 往下执行。可以通过以下两个语句来设置相应的超时 System.setProperty“.client.defaultConnectTimeout“, 超时毫秒数 字符串; System.setProperty“.client.defaultReadTimeout“, 超时毫秒数字 符串; 其中 .client.defaultConnectTimeout连接主机的超时时间(单位 毫秒) .client.defaultReadTimeout从主机读取数据的超时时间(单位毫 秒) 例如 System.setProperty“.client.defaultConnectTimeout“, “30000“; System.setProperty“.client.defaultReadTimeout“, “30000“; JDK 1.5以前的版本,只能通过设置这两个系统属性来控制网络超时。在1.5 中,还可以使用HttpURLConnection的父类URLConnection的以下两个方法setConnectTimeout设置连接主机超时(单位毫秒) setReadTimeout设置从主机读取数据超时(单位毫秒) 例如 HttpURLConnection urlCon HttpURLConnectionurl.openConnection; urlCon.setConnectTimeout30000; urlCon.setReadTimeout30000; 需要注意的是,笔者在JDK1.4.2环境下,发现在设置了defaultReadTimeout 的情况下,如果发生网络超时,HttpURLConnection会自动重新提交一次请求, 出现一次请求调用,请求服务器两次的问题(Trouble)。我认为这是 JDK1.4.2的一个bug。在JDK1.5.0中,此问题已得到解决,不存在自动重发现 象。 import java.io.*; import .*; /** * author chenzhimin * */ public class TestUrl /** * 只能用户HTTP协议 * param photoUrl * param fileName * return */ public boolean saveUrlAsString photoUrl, String fileName try URL url new URLphotoUrl;HttpURLConnection connection HttpURLConnection url.openConnection;DataStream in new DataStreamconnection.getStream;DataOutputStream out new DataOutputStreamnew FileOutputStreamfileName; byte buffer new byte4096;int count 0;while count in.readbuffer 0 out.writebuffer, 0, count;out.close;in.close;return true; catch Exception e System.out.printlne;return false; /** * 兼容HTTP和FTP协议 * param urlString * return */ public String getDocumentAtString urlString StringBuffer document new StringBuffer;try URL url new URLurlString;URLConnection conn url.openConnection;BufferedReader reader new BufferedReadernew StreamReaderconn.getStream;String line null;while line reader.readLine null document.appendline “n“;reader.close; catch MaledURLException e System.out.println“Unable to connect to URL “ urlString; catch IOException e System.out.println“IOException when connecting to URL “ urlString;return document.toString; /** * * param args*/ public static void mainString args TestUrl test new TestUrl;String photoUrl “http// fileName photoUrl.substringphotoUrl.lastIndexOf“/“;String filePath “f/bak/“;boolean flag test.saveUrlAsphotoUrl, filePath fileName;System.out.println“Run okn Get URL file “ flag;

java 设置请求超时时间_java设置http请求超时时间相关推荐

  1. java 设置日期的格式_java设置日期格式

    { System.out.println("格式正确"); } else { System.out.println("格式错误"); } } } 一.简单的日期 ...

  2. java http请求 工具类_java模拟http请求调用远程接口工具类

    package ln; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRea ...

  3. java 和mysql 时间_java和mysql之间的时间日期类型传递

    mysql(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59: ...

  4. java中定义一个时间_Java中的日期和时间

    根据个人目前正在编写的<Java核心编程-基础篇>的规划,这部分属于第15章内容,这里沿用了书中的章节编号.另外,因为原文篇幅太长,这里适当做了删减. 15.1.概述 在 Java 8 之 ...

  5. 向mysql中插入时间_Java向mysql中插入时间的方法

    ava向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明);部分资料参考网络资源 java向MySQL插入当前时间的四种方式 第一种:将java.util.Date类型的时 ...

  6. java设置过期时间_java设置session过期时间的实现方法

    本文实例讲述了java设置session过期时间的实现方法,分享给大家供大家参考.具体实现方法如下: 1.Timeout in the deployment descriptor (web.xml) ...

  7. java 手动事务回滚_JAVA设置手动提交事务,回滚事务,提交事务的操作

    我就废话不多说啦,还是直接看代码吧! /** * 设置数据库是否自动提交事务 * @param flag * @throws SQLException */ public void setAutoCo ...

  8. java socket超时时间_java中socket 默认超时时间 | 学步园

    MS:永远吧 Java代码 connect publicvoidconnect(SocketAddress endpoint, inttimeout) throwsIOException Connec ...

  9. java系统参数表有哪些_Java 设置系统参数和运行参数

    系统参数 系统级全局变量,该参数在程序中任何位置都可以访问到.优先级最高,覆盖程序中同名配置. 系统参数的标准格式为:-Dargname=argvalue,多个参数之间用空格隔开,如果参数值中间有空格 ...

  10. java中if条件格式_Java 设置Excel条件格式示例代码(高亮条件值、应用

    概述 在Excel中,应用条件格式功能可以在很大程度上改进表格的设计和可读性,用户可以指定单个或者多个单元格区域应用一种或者多种条件格式.本篇文章,将通过Java程序示例介绍条件格式的设置方法,设置条 ...

最新文章

  1. 某程序员炫耀:因长得太帅被女领导追求,三年就提拔到总监!程序员搞技术没用,健身护肤才是王道!...
  2. Msxml2.XMLHTTP Microsoft.XMLHTTP new XMLHttpRequest
  3. #pragma pack(n)和sizeof求结构的大小
  4. html遮罩层禁止滚动条滚动,遮罩层上弹窗滚动时禁止下层页面滚动的处理
  5. JDK和JRE它们之间的关系及区别
  6. 多线程是并行还是并发_并发,并行,线程,进程,异步和同步有相关性吗?
  7. Java数据库接口JDBC入门基础讲座_JDBC基础教程之连接
  8. 【公开课】斯坦福2019秋季课程:图机器学习资料全公开
  9. Xamarin教程索引页
  10. PPT小技巧:拆解汉字!
  11. 【转-参考】九宫格时间管理-第三代时间管理方法:人生平衡发展的八个方向
  12. 如果将编程语言变成女孩子,你更“喜欢”哪些呢?
  13. qq拼音 搜狗拼音的对比
  14. 分享30个优秀的网站导航设计案例
  15. 解决Ubuntu18.04 / 16.04和Win10双系统系统时间时间不同步
  16. 金蝶erp系统服务器端,金蝶ERP软件二次开发.doc
  17. akoj-1170-国王的魔镜
  18. 东莞耳机工厂告诉你,多唛降噪是什么!
  19. open-api-project
  20. 原创 | 聊聊延迟满足

热门文章

  1. 多媒体博客商业计划草案
  2. 【最新砍价小程序源码】
  3. 第十四届全国大学生智能汽车竞赛获奖名单
  4. FPS游戏自动枪械识别+压枪(以PUBG为例)
  5. php choosewxpay fail,人人商城常见问题解决方案
  6. vivoy67Android7升级包,vivoy67刷机包
  7. Navicat for MySQL 64位破解版
  8. 爱心代码(c语言实现)
  9. matlabadftest_adf检验matlab程序
  10. Matlab 实现信号滤波