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();
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>
您可能感兴趣的文章
- 《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之
- cocos2d-x ActionManager控制精灵的暂停运动
- cocos2d-x CCRotateTo 对初始角,旋转角的处理
- cocos2d-x在win32和iOS、android下获取当前系统时间的方法
- Cocos2d-x 的“HelloLua” 深入分析
- ibatis 关联自己,怎么映射 xml ?
- cocos2d-x 3.0rc 较于2.2v 诸多变化中的一些小点
- cocos2dx Sprite setBlendFunc 使用颜色混合:加算,减算
- Cocos2d-x学习(一):HelloWorld
- 用cocos2d-html5做的消除类游戏《英雄爱消除》(1)——系统主菜单