栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java Socket编程(一) API笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java Socket编程(一) API笔记

文章目录

实现思路

Socket通信模型 源码/文档笔记

InetAddress

官方文档说明常见构造方法 ServerSocket

官方文档说明常见构造方法方法摘要 Socket

官方文档说明方法摘要 实战环节

实现思路

TCP是面向连接、可靠的、有序的,以字节流方式发送数据的传输层协议。本程序的实现基于java.net包,客户端通过Socket类实现,服务器端通过ServerSocket类实现,通过输入输出流完成两者之间的信息交互。

Socket通信模型

源码/文档笔记 InetAddress 官方文档说明

InetAddress的一个实例由一个IP地址和可能的相应主机名组成。

常见构造方法

InetAddress的实例无法通过new来创建,常见的几种构造方式:

    InetAddress.getLocalHost()

    将机器名和本地主机的IP地址封装成为一个InetAddress对象并返回,下图为源码说明:


    代码示例(在具体实现中需要进行异常处理):

    InetAddress address = InetAddress.getLocalHost();
    System.out.println(address.getHostName());
    System.out.println(address.getHostAddress());
    // 终端输出
    // LAPTOP-C41TTS6B
    // 192.168.31.217 
    

    InetAddress.getByName();

    接收参数类型为String,参数内容为机器名或者IP地址的String,下图为源码说明
    代码示例(在具体实现中需要进行异常处理):

    // IP字符串示例
    InetAddress address = InetAddress.getByName("192.168.31.217"); 
    System.out.println(address);
    // 终端输出
    // LAPTOP-C41TTS6B/192.168.31.217 
    
ServerSocket 官方文档说明

这个类实现了服务器套接字。 服务器套接字等待通过网络进入的请求。 它根据该请求执行一些操作,然后可能将结果返回给请求者。

常见构造方法

ServerSocket(int port):将端口号绑定到Socket

ServerSocket(int port, int backlog):将端口号和等待队列长度(默认为50)绑定到Socket

ServerSocket(int port, int backlog, InetAddress bindAddr):将指定IP和port以及等待队列绑定到Socket

端口号(port)传参为0表示端口号是自动分配的,通常是从短暂的端口范围(0-65535)。这个端口号可以通过调用getLocalPort来检索。

输入连接指示(连接请求)的最大队列长度(backlog)默认设置为50 。 如果连接指示在队列已满时到达,则连接被拒绝。

方法摘要

ServerSocket.accept():监听要连接到Server Socket的Sokcet并接受它。 该方法会阻塞线程,直到建立连接。

ServerSocket.getInputStream()/getOutputStream():从Socket中获取输入/输出流,以进行信息的交互。

Socket 官方文档说明

该类实现客户端套接字(也称为“套接字”)。 套接字是两台机器之间通讯的端点。

方法摘要

Socket() :构造方法,创建一个未连接的套接字,并使用系统默认类型的SocketImpl。

Socket(InetAddress address, int port) :构造方法,创建流套接字并将其连接到指定IP地址的指定端口号。

Socket.getInputStream()/getOutputStream():从Socket中获取输入/输出流,以进行信息的交互。

实战环节

Java Socket编程(二)从单线程到多线程,实现聊天小程序

Java Socket编程(三)简单 Web 服务器的设计与实现(有待填坑)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/726503.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号