zoukankan      html  css  js  c++  java
  • Java客户端与服务器的通信

     实现简单的服务器程序

    1. package Socket;  
    2.   
    3. import java.io.IOException;  
    4. import java.io.InputStream;  
    5. import java.io.OutputStream;  
    6. import java.io.PrintWriter;  
    7. import java.net.ServerSocket;  
    8. import java.net.Socket;  
    9. import java.util.Scanner;  
    10.   
    11. public class EchoServer {  
    12.   
    13.     public static void main(String[] args) {  
    14.         try {  
    15.             //建立服务器端Socket,监听8189端口  
    16.             ServerSocket s = new ServerSocket(8189);  
    17.             //等待客户端的访问  
    18.             Socket incoming = s.accept();  
    19.             try{  
    20.                 //从“客户端”Socket对象读字节流  
    21.                 InputStream inStream = incoming.getInputStream();  
    22.                 //向“客户端”Socket对象写字节流  
    23.                 OutputStream outStream = incoming.getOutputStream();  
    24.                 //将读出来的数据封装成Scanner对象  
    25.                 Scanner in = new Scanner(inStream);  
    26.                 //封装输出流  
    27.                 PrintWriter out = new PrintWriter(outStream,true);  
    28.                                        
    29.                 //接收到客户端的请求,输出"Hello! Enter Bye to exit."                 
    30.                 out.println("Hello! Enter BYE to exit.");  
    31.                   
    32.                //解析客户端的输入,然后做出回应  
    33.                 boolean done = false;  
    34.                 while(!done&&in.hasNext())  
    35.                 {  
    36.                     String line = in.nextLine();  
    37.                     out.println("Echo:"+line);  
    38.                     if(line.trim().equals("BYE")) done=true;  
    39.                 }  
    40.             }  
    41.             finally{  
    42.                 //关闭客户端的Socket  
    43.                 incoming.close();  
    44.             }  
    45.         } catch (IOException e) {  
    46.             e.printStackTrace();  
    47.         }  
    48.     }  
    49. }  

    然后在cmd下 使用telnet 127.0.0.1 8189 进行测试。

    1.ServerSocket(int port)

    创建一个监控端口的服务器Socket

    2.Socket accept() 等待连接。

    该方法阻塞当前线程直到建立连接为止。该方法返回一个Socket对象。程序可以通过这个对象与连接中的客户端进行通信。

    3.void close()

    关闭服务器套接字

  • 相关阅读:
    spring+hibernate 整合异常 Class 'org.apache.commons.dbcp.BasicDataSource' not found
    ExtJS+SpringMVC文件上传与下载
    没有权限角色管理功能菜单加载
    java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java he
    js 验证input 输入框
    目录结构
    文件权限命令 linux
    Java 代码完成删除文件、文件夹操作
    js 获取时间不能大于当前系统时间
    hibernate createQuery和createSQLQuery 查询结果count计算
  • 原文地址:https://www.cnblogs.com/dhm520/p/8604083.html
Copyright © 2011-2022 走看看