java笔记---网络编程

网络:将不同区域的计算机连接到一起     (局域网、域域网、互联网)

地址:IP地址  确定网络上的一个绝对地址

端口号:区分计算机软件    相当于房门   2个字节

  1. 在同一个协议下,端口号不能重复
  2. 1024以下的不要使用   80 http、21 ftp

资源定位:URL 统一资源定位符     URI:统一资源

数据的传输:

  1. TCP协议:一种面向连接的、可靠的、基于字节流的运输层通信协议。例如电话
    1. 面向连接
    2. 点到点的通信
    3. 高可靠性
  2. UDP协议:一种无连接的传输层协议,提高面向事务的简单不可靠信息传输服务。例如发送短信
    1. 非面向连接
    2. 传输不可靠
    3. 数据可能发生丢失

传输:

  1. 先封装
  2. 再拆封

涉及的类:

  1. InetAddress    InetSocketAddress
    1. InetAddress 封装计算机的ip地址和DNS,没有端口
    2. InerSocketAddress  包含端口,用于socket通信的
  2. UPL
    1. 四部分组成:协议、存放资源的主机域名、端口、资源文件名
    2. 创建:URL(String spec) 绝对路径构建       URL(URL context,String spec)相对路径构建
      public class Demo01 {
      	public static void main(String[] args) throws MalformedURLException {
      		//绝对路径构建
      		URL url=new URL("http://www.baidu.com:80/index.html#aa?uname=bjsxt");  //#aa锚点
      		System.out.println("协议:"+url.getProtocol());
      		System.out.println("域名:"+url.getHost());
      		System.out.println("端口:"+url.getPort());
      		System.out.println("资源:"+url.getFile());
      		System.out.println("相对路径:"+url.getPath());
      		System.out.println("锚点:"+url.getRef());
      		System.out.println("参数:"+url.getQuery());  //?参数  存在锚点返回null   不存在返回正确
      		
      		//相对路径构建
      		url=new URL("http://www.baidu.com:80/a/");
      		url=new URL(url,"b.txt");//相对路径
      		System.out.println(url.toString());
      	}
      }
  3. TCP:ServerSocket   Socket
  4. UDP:DatagarmSocket   DatagramPacket

猜你喜欢

转载自blog.csdn.net/weixin_42230478/article/details/81370198