java中UDP和URL编程的学习

UDP和URL网络编程

1.UDP网络编程
类 DatagramSocket 和 DatagramPacket 实现了基于 UDP 协议网络程序。

UDP数据报通过数据报套接字 DatagramSocket 发送和接收,系统不保证UDP数据报一定能够安全送到目的地,也不能确定什么时候可以抵达。

DatagramPacket 对象封装了UDP数据报,在数据报中包含了发送端的IP地址和端口号以及接收端的IP地址和端口号。

UDP协议中每个数据报都给出了完整的地址信息,因此无须建立发送方和接收方的连接。如同发快递包裹一样。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

package udp;

import org.junit.Test;

import java.io.IOException;
import java.net.*;

public class Demo {
    @Test
    public void send() throws IOException {
        DatagramSocket datagramSocket = new DatagramSocket();

        String str = "我是发送消息的";

        byte [] bs = str.getBytes();

        InetAddress inetAddress = InetAddress.getLocalHost();


        DatagramPacket datagramPacket = new DatagramPacket(bs,0,bs.length,inetAddress,9090);

        datagramSocket.send(datagramPacket);

        datagramSocket.close();
    }

    @Test
    public void receive() throws IOException {
        DatagramSocket datagramSocket = new DatagramSocket(9090);

        byte [] bf = new byte[100];

        DatagramPacket datagramPacket = new DatagramPacket(bf, 0, bf.length);

        datagramSocket.receive(datagramPacket);

        System.out.println(new String(datagramPacket.getData(),0,datagramPacket.getLength()));

        datagramSocket.close();
    }
}

2.URL编程
URL(Uniform Resource Locator):统一资源定位符,它表示 Internet 上 某一资源的地址。

它是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。

通过 URL 我们可以访问 Internet 上的各种网络资源,比如最常见的 www,ftp站点。浏览器通过解析给定的 URL 可以在网络上查找相应的文件或其他资源。

URL的基本结构由5部分组成:
< 传输协议>://< 主机名>:< 端口号>/< 文件名># 片段名? 参数列表
例如:
http://192.168.1.100:8080/helloworld/index.jsp#a?username=shkstart&password=123
#片段名:即锚点,例如看小说,直接定位到章节
参数列表格式:参数名=参数值&参数名=参数值…

为了表示URL,java.net 中实现了类 URL。我们可以通过下面的构造器来初始化一个 URL 对象:

public URL (String spec):通过一个表示URL地址的字符串可以构造一个URL对象。例
如:URL url = new URL (“http://www. atguigu.com/”);
public URL(URL context, String spec):通过基 URL 和相对 URL 构造一个 URL 对象。
例如:URL downloadUrl = new URL(url, “download.html")
public URL(String protocol, String host, String file); 例如:new URL(“http”,
“www.atguigu.com”, “download. html");
public URL(String protocol, String host, int port, String file); 例如: URL gamelan = new
URL(“http”, “www.atguigu.com”, 80, “download.html");

URL类的构造器都声明抛出非运行时异常,必须要对这一异常进行处理,通常是用 try-catch 语句进行捕获。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值