实现单线程Socket服务器端
——–实现单线程Socket服务器端:
package com.corejava;
import java.net.Socket;
import java.net.ServerSocket;
import java.io.*;
import java.util.Scanner;
public class SocketServer
{
public static void main(String[] args) throws Exception
{
ServerSocket s = new ServerSocket(8189); // 使用8189端口实例化一个socket服务器
System.out.println(“服务器等待链接中…”);
Socket incoming = s.accept(); // 服务器等待链接请求,成功返回Socket对象
InputStream input = incoming.getInputStream(); // 获取输入流,接收客户端输入
OutputStream output = incoming.getOutputStream(); // 获取输出流,向客户端发送
Scanner in = new Scanner(input); // 用于转换字节成文本
in.useDelimiter(“\n”);
PrintStream out = new PrintStream(output, true/*auto flush*/); // 用于写出字符
if (incoming != null)
{
System.out.println(“一个客户端成功建立链接!”);
out.println(“你好,连接服务器成功,输入[bye]退出当前连接”);
}
while (in.hasNextLine())
{
String line = in.nextLine(); // 接收从客户端读入的信息
out.println(“Echo:” + line); // 响应客户端信息
if (line.trim().equals(“bye”)) // 输入bye,关闭当前socket对象
{
incoming.close();
System.out.println(“服务器已关闭!”);
}
}
}
}
/*
ubuntu@xu-desktop:~$ java com.corejava.SocketServer
服务器等待链接中…
一个客户端成功建立链接!
服务器已关闭!
*/
声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 嗅谱网
转载请注明:转自《实现单线程Socket服务器端》
本文地址:http://www.xiupu.net/archives-169.html
关注公众号:
微信赞赏
支付宝赞赏