Java网络编程

1.基于TCP的Socket网络编程:

服务器:使用ServerSocket(int port)建立一个服务器端套接字,并绑定到制定端口上。调用ServerSocket的accept()监听连接请求,如果有连接,则接收该连接Socket。调用Socket的getInputStream()和getOutputStream()方法来获取一个该链接的输入流和输出流,用于收发数据。最后关闭套接字。

客户端:使用Socket(InetAddress address,int port)创建一个套接字,并指明服务器端的IP和端口。调用Socket的getInputStream()和OutputStream()来获取一个输入输出流,用于收发数据。最后关闭套接字。

2.基于UDP的Socket网络编程:

接收端:使用DatagramSocket(int port)来创建一个数据包套接字,并绑定到制定端口。创建一个DatagramPacket(byte[] buff,int length)用来接收数据包。调用DatagramSocket的Recieve(DatagramPacket packet)来接收数据包。创建一个DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port)用于发送数据的数据包(其中接收到的DatagramPacket 中包含了发送方的ip和port)。调用DatagramSocket的send()发送数据包。关闭数据包套接字。

发送端:使用DatagramSocket()来创建一个数据包套接字,系统自动分配端口。创建一个DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port)用于发送数据的数据包。调用DatagramSocket的send()发送数据包。创建一个DatagramPacket(byte[] buff,int length)用来接收数据包。调用DatagramSocket的Recieve(DatagramPacket packet)来接收数据包。关闭数据包套接字。

3.实现资源的下载:

构建一个URL对象。利用URL的openConnection()来返回一个URLConnection对象。利用URLConnection的getInputStream()和getOutputStream()分别获取一个输入流和一个输出流,分别实现下载和上传的功能。

你可能感兴趣的:(java网络编程)