HttpURLConnection用法详解(4)

来源:未知 责任编辑:责任编辑 发表时间:2013-11-18 20:56 点击:

p> 

p>注意:上述在创建对象输出流ObjectOutputStream时,如果将从HttpServletRequest取得的输入流 

p>      (即:new ObjectOutputStream(outStrm)中的outStrm)包装在BufferedOutputStream流里面, 

p>      则必须有objOutputStrm.flush();这一句,以便将流信息刷入缓冲输出流.如下: 

p>      ObjectOutputStream objOutputStrm = new ObjectOutputStream(new BufferedOutputStream(outStrm)); 

p>      objOutputStrm.writeObject(null); 

p>      objOutputStrm.flush(); // <======此处必须要有. 

p>      objOutputStrm.close(); 

p> 

p>HttpURLConnection是基于HTTP协议的,其底层通过socket通信实现。如果不设置超时(timeout),在网络异常的情况下,可能会导致程序僵死而不继续往下执行。可以通过以下两个语句来设置相应的超时: 

p>System.setProperty("sun.net.client.defaultConnectTimeout", 超时毫秒数字符串); 

p>System.setProperty("sun.net.client.defaultReadTimeout", 超时毫秒数字符串); 

p> 

p> 

p>其中: sun.net.client.defaultConnectTimeout:连接主机的超时时间(单位:毫秒) 

p>sun.net.client.defaultReadTimeout:从主机读取数据的超时时间(单位:毫秒) 

p> 

p>例如: 

p>System.setProperty("sun.net.client.defaultConnectTimeout", "30000"); 

p>System.setProperty("sun.net.client.defaultReadTime 

p> 

p>Java中可以使用HttpURLConnection来请求WEB资源。 

p>HttpURLConnection对象不能直接构造,需要通过URL.openConnection()来获得HttpURLConnection对象,示例代码如下: 

p> 

p>1 String szUrl = "http://www.ee2ee.com/";  

p>2 URL url = new URL(szUrl);  

p>3 HttpURLConnection urlCon = (HttpURLConnection)url.openConnection();  

p> 

p>HttpURLConnection是基于HTTP协议的,其底层通过socket通信实现。如果不设置超时(timeout),在网络异常的情况下,可能会导致程序僵死而不继续往下执行。可以通过以下两个语句来设置相应的超时: 

p>System.setProperty("sun.net.client.defaultConnectTimeout", 超时毫秒数字符串); 

p>System.setProperty("sun.net.client.defaultReadTimeout", 超时毫秒数字符串); 

p> 

p> 

p>其中: sun.net.client.defaultConnectTimeout:连接主机的超时时间(单位:毫秒) 

p>sun.net.client.defaultReadTimeout:从主机读取数据的超时时间(单位:毫秒) 

p> 

p>例如: 

p>System.setProperty("sun.net.client.defaultConnectTimeout", "30000"); 

p>System.setProperty("sun.net.client.defaultReadTimeout", "30000"); 

p> 

p>JDK 1.5以前的版本,只能通过设置这两个系统属性来控制网络超时。在1.5中,还可以使用HttpURLConnection的父类URLConnection的以下两个方法: 

p>setConnectTimeout:设置连接主机超时(单位:毫秒) 

p>setReadTimeout:设置从主机读取数据超时(单位:毫秒) 

p> 

p>例如: 

p>1 HttpURLConnection urlCon = (HttpURLConnection)url.openConnection();  
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • cocos2d-x学习笔记(19)--label 、label atlas
  • cocos2d-x学习笔记(23)--地图的使用3--CCTMXLayer
  • Cocos2d-x学习(一):HelloWorld
  • cocos2dx在xcode下开发,编译到android上(2)
  • cocos2d 设置屏幕默认方向
  • cocos2d-x学习笔记(22)--地图的使用2(TMX) --Z-Order、AnchorPoi
  • Cocos2d-x 2.0 之 Actions “三板斧” 之一
  • cocos2d-x学习笔记(18)--游戏打包(windows平台)
  • cocos2d-x学习笔记(16)--spritesheet(精灵表单)
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1