Java Networking | Socket

一、概念

Socket(套接字),位于运输层( TCP、UDP )和应用层之间,是抽象层的一组接口。应用程序可以通过Socket进行接受和发送数据。Socket符合模式:open -> write/read -> close。

Socket就像是管理TCP/UDP协议族和数据的管理员,应用客户只需和Socket“打交道”,而不必去关心底层的协议。


二、Java Socket Programming

Java Socket Programming用于不同的应用之间进行通信,它有两种形式:

1、connection-oriented socket programming:比如Socket和ServerSocket 

2、connection-less socket programming:比如DatagramSocket and DatagramPacket classes

客户Client和服务器Server进行通信如下图所示:

Socket Programming in Java

三、Socket类和ServerSocket类

1、Socket用于Client和Server之间的通信;Socket类用于创建一个Socket。Socket类需要传递主机名hostname(或IP地址),和端口号。如下,创建一个Socket类的对象

Socket s = new Socket("localhost", 6666);

在这里,hostname是localhost。当Client和Server在同一个系统的时候,我们用localhost作为hostname。

2、ServerSocket用于创建一个Server:

ServerSocket ss = new ServerSocket(6666);
Socket s = ss.accept();//建立连接并等待Client
发布了26 篇原创文章 · 获赞 9 · 访问量 8222

猜你喜欢

转载自blog.csdn.net/weixin_41664064/article/details/104028702
今日推荐