java swing点击按钮后输出结果展示_Java网络通信之TCP-UDP

一、网络编程基础

1.1 网络编程有两个主要的问题:

①: 如何准确定位网络上的一台或多台主机 ②: 定位后如何可靠高效的传输数据

在TCP/IP中,IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一的确定网络上的一台主机. 而TCP层提供面向应用的数据传输机制,这是网络编程的主要对象.

1.2 基本概念:

端口号: 网络通信时同一机器上的不同进程的标识(其中0~1023为系统保留的端口号),端口范围: 0~65535 套接字: IP : 端口号 资源名: 是资源的完整地址,包括主机名,端口号,文件名,如http://www.sun.com (协议名://主机名)http://home.netscape.com/home/welcome.html(协议名://机器名+文件名) 协议名:指明获取资源时所使用的传输协议。 如http,ftp,gopher,file

1.3 关于UDP:

UDP: 无连接的协议,每个数据报都是一个独立的信息,包括完整的源地址或目的地址,它在网络上任何可能路径传往目的地 ,不可靠性(发送方发送的数据报不一定以相同次序到达接收方),传输效率高,有大小限制(每个数据报大小不超过64KB),.

1.4 获取网络信息和资源:

1.4.1 非常重要的一个类: InetAddress (IP地址的封装类)

http://java.net中很多类使用到了它,如ServerSocket, Socket , DatagramSocket等

1.4.2 常用方法:

获取本机主机名: InetAddress.getLocalHost().getHostName() 获取本机IP: InetAddress.getLocalHost().getHostAddress() 获取本机端口: serverSocket = new ServerSocket(6666); serverSocket.getLocalPort();

服务器端获取客户端IP: Socket socket = serverSocket.accept(); socket.getInetAddress().getHostAddress(); 服务器获取客户端端口: String.valueOf(socket.getPort())

二、基于TCP的网络通信:

2.1 通过套接字建立连接的过程:

c9d99a1aa0814e7545e0569cc132e853.png

2.2 实例:

客户端:

package 

运行图:

a544f4400af0d68ff47c3fa69ad6da30.png

服务器端:

package 

运行图:

48b6c75604478ffa1b0fe7e305877ea2.png

客户端与服务器通信:

9d9db81e37237a8e9ae2742a7ce610a7.png

三、基于UDP的网络通信:

3.1 实例:

package 

运行两次,出现两个窗口,在这两个窗口进行通信**

运行图:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值