• 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

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

  • 相关阅读:
    JSP----获取表单参数
    application 从web.xml中获取初始化参数
    使用定时器分解任务
    无阻塞加载外部js(动态脚本元素,XMLHttpRequest注入,LazyLoad)
    ReactJs 入门DEMO(转自别人)
    带你一分钟理解闭包--js面向对象编程(转载他人)
    使用SqlBulkCopy进行批量数据插入
    AngularJsDEMO
    ECharts
    C#发送邮件DEMO
  • 原文地址:https://www.cnblogs.com/raylee2007/p/4774562.html
Copyright © 2020-2023  润新知