zoukankan      html  css  js  c++  java
  • 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这个参数,不然客户端刷新不出来内容

    如下图


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


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

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

  • 相关阅读:
    mysql分组统计后将结果顺序排列(union实现)
    mysql格式化日期
    yaf框架安装
    如何通过PHP将excel的数据导入MySQL中
    yii日志保存机制
    安装PyInstaller打包python
    python正则表达式详解
    Python中类的定义与使用
    例子 使用sqlite3 数据库建立数据方式
    python操作轻量级数据库
  • 原文地址:https://www.cnblogs.com/raylee2007/p/4774562.html
Copyright © 2011-2022 走看看