(网络编程)应用层URLConnection与传输层Socket的关系

Socket是传输层的技术,包含了UDP和TCP两种传输方式。

HTTP协议是应用层的协议,应用层协议还有FTP文件传输协议。

 

Java中,应用层使用URL和URLConnection完成HTTP协议和Socket流的封装。

 

package com.gc.socket;

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;

public class HttpDemo {
	public static void main(String[] args) throws IOException {
		/**
		 * URLConnection对象将HTTP协议头的解析、Socket传输进行了封装
		 * 对外提供方法封装好的方法
		 * 开发者不用面对Socket编程处理与服务端的连接
		 * 直接通过该对象就能完成基于HTTP协议的编程
		 */
		URL url = new URL("http://www.baidu.com?name=zs");
		
		//port=-1,服务端会自动转为80端口
		System.out.println(url.getProtocol()+","+url.getHost()+","+url.getPort()+","+url.getQuery());
		
		/**对http头信息进行了内部处理,并完成了与服务器之间的socket连接*/
		URLConnection conn = url.openConnection();
		
		System.out.println(conn.getContentType());
		System.out.println(conn.getContentLength());
		
		InputStream in = conn.getInputStream();
		
		byte[] buf = new byte[1024];
		
		int len = 0;
		
		while((len=in.read(buf))!=-1)
			System.out.println(new String(buf,0,len));
		
		in.close();
	}
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Android系统的运行层中,网络服务是一个重要的组成部分。Android提供了一套完整的网络框架,用于实现网络通信和连接。这些网络服务包括以下几个方面: 1. 网络连接管理:Android提供了网络连接管理器,用于管理设备的网络连接状态。它可以监测设备上的网络连接,包括Wi-Fi、移动数据网络等,并提供了API接口供应用程序查询和控制网络连接状态。 2. 网络传输协议支持:Android支持多种网络传输协议,包括TCP/IP、HTTP、HTTPS等。这些协议使应用程序能够通过网络进行数据传输和通信。Android提供了相应的API接口和类库,简化了应用程序开发过程。 3. 网络安全:Android系统提供了网络安全机制,包括TLS/SSL支持和证书验证等。这些机制确保网络通信的安全性和数据的保密性。 4. 网络通信类库:Android提供了一系列的网络通信类库,如Socket类、URLConnection类等,用于实现网络通信功能。开发者可以使用这些类库来建立网络连接、发送和接收数据等操作。 5. 网络调试工具:Android系统还提供了一些网络调试工具,如抓包工具、网络流量监测工具等,用于辅助开发者调试和优化网络通信。 这些网络服务和功能使得Android应用程序可以通过网络实现各种功能,如下载文件、实时通信、远程控制等。同时,Android系统还支持多种网络通信技术,如Wi-Fi、蓝牙、NFC等,为应用程序提供了更多的选择和灵活性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值