计算机网路复习系列:UrlConnection连接和Socket连接的区别

本文详细对比了Socket与URLConnection(包括HttpURLConnection)之间的区别。Socket提供底层的网络通信能力,适用于需要持续连接的应用如游戏;而URLConnection及其子类HttpURLConnection则为HTTP等特定协议提供了更高层次的封装。

Socket

Socket是底层实现,协议你要自己去写,不局限于http,可以是任何协议。

Socket 的连接是有状态的,一旦两边连接上了,将一直保持连接,除非人为断开。一般用于游戏,需要持续的网络畅通。

URLConnection

URLConnection和HttpURLConnection使用的都是java.net中的类,属于标准的java接口。

httpurlconnection是对socket的封装。类似httpclient,ftpClient,URLConnetcion之类的,是对专属协议的封装。

HttpURLConnection继承自URLConnection,差别在与HttpURLConnection仅仅针对Http连接。
HttpURLConnection或URLConnection连接完成后不会保持连接状态。
例如浏览器访问网址,页面加载完成后,将断开连接,如果再点击,会再次连接。

参考资料:

http://blog.youkuaiyun.com/mzyang272/article/details/8024357

Java中 HttpUrlConnection 与 Socket 连接的异同
http://bbs.youkuaiyun.com/topics/370244325

socket HttpURLConnection 通信异同
http://blog.youkuaiyun.com/zhuyijian135757/article/details/30261481

Socket、URLConnection 和HttpURLConnection的区别
http://blog.youkuaiyun.com/bibi1314123/article/details/17090927

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值