java基础入门-建立容易的ServerSocket

java基础入门-建立简单的ServerSocket

今天说说建立小型的服务器。


一般服务器都是循环执行下面几个流程:

1.接收数据流从客户端接受命令

2.解码

3.收集需求

4.通过数据流返回数据


下面上源码:


package com.test.socket;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;

public class TestSocket {
	public static void main(String[] args) {
		try {
			ServerSocket serverSocket = new ServerSocket(8189);
			Socket socket = serverSocket.accept();
			InputStream inputStream = socket.getInputStream();
			OutputStream outputStream = socket.getOutputStream();
			Scanner scanner = new Scanner(inputStream);
			PrintWriter printWriter = new PrintWriter(outputStream, true);
			printWriter.println("welcome to testServer");
			boolean done = false;
			while (!done && scanner.hasNextLine()) {
				String line = scanner.nextLine();
				printWriter.println("Echo:" + line);
				if (line.trim().equals("bye")) {
					done = true;
				}
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}


注意:

1.PrintWriter后面需要加上true这个参数,不然客户端刷新不出来内容

如下图

java基础入门-建立容易的ServerSocket

当加上了autoflush=true之后,才会互相内容

java基础入门-建立容易的ServerSocket

这样我们就自己建立了一个最简单的server

版权声明:本文为博主原创文章,未经博主允许不得转载。