`
haoran_10
  • 浏览: 442551 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Socket 、ServerSocket 常用方法简介

    博客分类:
  • java
阅读更多

 

 

Socket,ServerSocket 用于TCP/IP协议

 

(1)Socket:

 

1.Socket 最常用构造方法:

<1>:public Socket(String host,int port);

host是连接所需服务器的名称或者ip地址 , port是端口号

 

2. 最常用的两个方法:

<1>:public OutputStream getOutputStream()

返回一个输出流,进行数据的传递;可以把返回的输出流进行再包装,传送数据更为方便

<2>:public InputStream getInputStream()

返回一个输入流,进行数据的读取;也可以把输入流进行包装,读取数据时更为快捷

3. 获取Socket的信息:

<1>:public InetAddress getInetAddress()

获得服务器的IP地址

<2>:public int getPort()

获得服务器的端口(一般由服务器随机设置的端口,与服务器端当初建立的时候端口不一致,稍微注意)

<3>:public InetAddress getLocalAddress()

获取本地的地址

<4>:public int getLocalPort()

获取本地的端口

 

4. 关闭socket的连接(很重要,如果一个连接结束之后,不再使用,一定记着关闭,否则服务器就会负载过重造成崩溃)

<1>:public void close()

关闭与服务器的连接

5. 设置socket的选项,一些常用的配置

<1>:public void setTcpNoDelay(boolean on)

默认为false,会先把数据缓存,到一定数量后一起发送;

如果设为true,则会立即发送数据,常用作游戏设计中,服务器需要快速的得到客户端的响应

<2>:public void setReuseAddress(boolean on)

当接收方的close()方法关闭socket时,网络上还有没发送到这个socket的数据,那么底层的socket不会立即释放本地端口,

会等待一段时间,确保收到了网络上收到的数据,然后再释放端口;当在这个时间段里,又重新使用这个端口,会发送异常,如果设置

属性为true,则会立即关闭底层socket,但是设置这个属性时,不能在创建socket的时候指定host,port;

<3>:public void setSoTimeout(int timeout)

设置接受数据时的等待超时时间

<4>:public void setReceiveBufferSize(int size)

设置接收数据的缓冲区的大小

<5>:public void setSendBufferSize(int size)

设置发送数据缓冲区的大小

(2):ServerSocket

1. 构造函数

<1>public ServerSocket(int port)

port:指定端口号

<2>public ServerSocket(int port,int backlog)

port是端口号,backlog,指定请求队列的长度

2. 最常用的一个方法

<1>:public Socket accept()

接受一个客户的请求,很重要的一个方法,建立与客户的联系;

是一个阻塞方法,如果没有用户的请求,会一直等待

3.  获取一些信息

<1>:public InetAddress getInetAddress()

<2>:public int getLocalPort()

4. ServerSocket选项

<1>public void setSoTimeout(int timeout)

· 设置等待客户连接的超时时间

<2>public void setReuseAddress(boolean on)

设置是否允许重用服务器锁绑定的地址

<3>public void setReceiveBufferSize(int size)

设置接受数据的缓冲区的大小

 

 

分享到:
评论

相关推荐

    有关java线程循环和serversocket和socket的程序借鉴.pdf

    本实验报告主要介绍 Java 中多线程和 Socket 编程的基本概念和实现方法。通过实验,我们掌握了网络编程的基本概念,如客户机、服务器、协议、端口等,并且了解了 Java.net 包中常用的网络编程工具类的功能和使用。 ...

    安卓端Socket连接的方法aidl+server

    - 在测试Socket通信时,串口调试助手是一个常用的工具,它可以模拟客户端角色,与服务器进行数据交互。通过设置服务器的IP和端口,可以发送和接收消息,验证Socket通信的正确性。 6. **安全和性能考虑**: - 为了...

    Socket连接-TCP测试

    TCP(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,它是Socket连接常用的底层协议之一。在这个“Socket连接-TCP测试”案例中,我们将探讨如何使用Socket进行TCP连接,并...

    c# socket 通讯Demo

    C#是一种广泛用于构建桌面和Web应用程序的编程语言,其强大的.NET框架提供了丰富的支持来进行网络通信,其中Socket通信是最基础也是最常用的方式之一。本文将深入探讨C#中使用Socket进行网络通信的关键知识点。 ...

    IotSocket_socket_

    在物联网(IoT)领域,Socket编程是一种常用的技术,用于设备间的网络通信。"IotSocket_socket_"这个标题暗示我们将探讨如何使用Socket实现物联网设备之间的交互,包括监听、发送和接收数据。Socket在计算机网络中...

    Android学习之Socket通信

    以下是一些常用的构造方法: - `Socket(InetAddress address, int port)`:创建一个连接到指定 IP 地址和端口的 Socket。 - `Socket(InetAddress address, int port, boolean stream)`:创建一个流 Socket 或数据报...

    windows下socket通信代码

    在Windows环境下进行网络编程时,Socket通信是一种常用的技术。Socket接口是操作系统提供的网络通信API,允许应用程序通过TCP/IP协议栈与其他计算机进行数据交换。本文将详细介绍Windows下的Socket通信代码,包括...

    android 手机socket传输程序示例

    在Android平台上进行网络通信时,Socket(套接字)是一种常用的方法,它允许应用程序通过网络发送和接收数据。本示例将重点讲解如何在Android手机上实现Socket通信,包括服务器端(Server)和客户端(Client)的编程...

    Java Socket编程实现的简单多线程WEB服务器

    Socket 编程简介 Socket 编程是 Java 网络编程的基础,它允许开发者创建客户端和服务器端的网络应用程序。Socket 是一种 IPC(Inter-Process Communication,进程间通信)机制,用于在不同的进程之间进行数据交换。...

    socket示例.rar

    1. **Socket接口与ServerSocket类** - `java.net.Socket`是Java提供的用于表示TCP连接的类,它实现了客户端的逻辑。在`SocketClient.java`中,通常会创建一个Socket对象,指定服务器的IP地址和端口号,然后通过这个...

    SocketDemo.zip

    2. **TCP/IP协议**: TCP(传输控制协议)是Socket通信中常用的一种协议,它提供面向连接、可靠的数据传输。TCP通过三次握手建立连接,并在数据传输过程中进行错误检测和重传,确保数据的完整性和顺序。 3. **C#中的...

    Indy组件开发Socket应用程序

    在前一段的工作中,需要开发一套简单的网络数据传输程序。由于平时常用Delphi做点开发,故此次也不例外。...本文在对Indy进行简要介绍的基础上,创建了一组简单的TCP Socket数据传输应用来演示了Indy的使用方法。

    ServerSocket简单实现

    1. 创建`Socket`:客户端使用`new Socket(String host, int port)`构造方法连接到指定的服务器,例如`socket = new Socket("localhost", 8888)`,这里的`localhost`表示本地主机,`8888`是服务器端口。 2. 数据传输...

    (源代码)C# Socket服务器和Tcp客户端通信

    C#作为一种强大的.NET框架支持的语言,提供了丰富的库来实现各种网络通信,其中Socket通信是最基础也是最常用的方式。本项目聚焦于C#中的Socket服务器和Tcp客户端之间的通信,旨在帮助开发者理解和实践网络编程的...

    Socket基础知识笔记

    4. **常用方法**: - `Socket connect(SocketAddress endpoint)`:客户端调用此方法连接服务器。 - `ServerSocket(int port)`:服务器端创建ServerSocket,指定监听的端口号。 - `InputStream getInputStream()`...

    SOCKET 工具

    Socket工具是一种在网络编程中常用的工具,它主要用于实现进程间的通信,特别是在分布式系统中,通过Socket接口,不同计算机上的程序可以相互通信。Socket是TCP/IP协议族的一部分,它提供了低级别的网络通信接口,...

    Socket编程一实现简易的聊天功能以及文件传输.docx

    ServerSocket的常用构造方法如下: ```java ServerSocket(int port); // 创建一个ServerSocket,监听指定的端口 ServerSocket(int port, int backlog); // 创建ServerSocket,监听端口,指定最大连接队列长度 ...

    Socket通信

    在Socket编程中,TCP Socket常用在需要稳定、无错传输的场景,如网页浏览、电子邮件等。 UDP(用户数据报协议)则是一种无连接的、不可靠的通信方式。它不保证数据包的顺序和完整性,但具有更低的延迟和更高的传输...

    利用Socket界面实现计算三角形面积

    在计算机网络编程中,Socket接口是一种常用的通信机制,它提供了进程间通信(IPC)和网络通信的能力。本项目“利用Socket界面实现计算三角形面积”是基于Socket编程,旨在创建一个服务器应用程序,能够同时处理多个...

    Java基础_三步学会Java_Socket编程(一)

    在Java中,`java.net.Socket`继承自`java.lang.Object`,提供了多个构造函数以及一些常用的方法,用于处理网络连接和数据传输。 - **构造函数**:用于创建Socket实例。 - **重要方法**: - `.accept()`:用于...

Global site tag (gtag.js) - Google Analytics