网络编程--Socket与ServerSocket

Posted StanLong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络编程--Socket与ServerSocket相关的知识,希望对你有一定的参考价值。

1、服务器端代码

package net;

import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;

public class Server {
    public static void main(String[] args) throws Exception{
        ServerSocket server =  new ServerSocket(8888);
        System.out.println("等待客户端连接.......");
        Socket client = server.accept(); //接收客户端连接
        
        PrintStream out = new PrintStream(client.getOutputStream());
        out.println("HelloWorld"); //要输出的信息
        out.close();
        client.close();
        server.close();
    }
}

运行程序,控制台输出:   等待客户端连接.......
2、客户端代码

package net;

import java.net.Socket;
import java.util.Scanner;

public class Client {
    
    public static void main(String[] args) throws Exception {
        Socket client = new Socket("localhost", 8888);
        Scanner scan = new Scanner(client.getInputStream());
        scan.useDelimiter("\n");
        if(scan.hasNext()){
            System.out.println(scan.next());
        }
        scan.close();
        client.close();
    }

}

运行程序,控制台输出: HelloWorld(如果服务器端程序停止运行,则客户端无信息输出)

以上是关于网络编程--Socket与ServerSocket的主要内容,如果未能解决你的问题,请参考以下文章

Tcp 中 Socket() 与 ServerSocket() 的区别?

网络I/O模型--03非阻塞模式(ServerSocket与Socket的超时处理)--解除accept() read()方法阻塞

网络编程socketserver的方法都有哪些

JAVA: Socket和ServerSocket网络编程

网络编程之Socket & ServerSocket

网络Socket,ServerSocket