zoukankan      html  css  js  c++  java
  • java 网络编程Socket编程

    Server.java

    import java.io.*;
    import java.net.*;
    public class Server {
       public static void main(String args[]) {
          String [] answer ={"南非","进入世界杯了","哈哈...问题真逗!"};
          ServerSocket serverForClient=null;
          Socket socketOnServer=null;
          DataOutputStream out=null;
          DataInputStream  in=null;
          try { serverForClient = new ServerSocket(2010);
          }
          catch(IOException e1) {
                System.out.println(e1);
          } 
          try{ System.out.println("等待客户呼叫");
               socketOnServer = serverForClient.accept(); //堵塞状态,除非有客户呼叫
               out=new DataOutputStream(socketOnServer.getOutputStream());
               in=new DataInputStream(socketOnServer.getInputStream());
               for(int i=0;i<answer.length;i++) {
                  String s=in.readUTF(); // in读取信息,堵塞状态
                  System.out.println("服务器收到客户的提问:"+s);
                  out.writeUTF(answer[i]);
                  Thread.sleep(500);
               }
          }
          catch(Exception e) {
              System.out.println("客户已断开"+e);
          }
       }
    }

    Client.java

    import java.io.*;
    import java.net.*;
    public class Client {
       public static void main(String args[]) {
          String [] mess ={"2010世界杯在哪举行?","巴西进入世界杯了码?","中国进入世界杯了码?"};
          Socket mysocket;
          DataInputStream in=null;
          DataOutputStream out=null;
          try{  mysocket=new Socket("127.0.0.1",2010);
                in=new DataInputStream(mysocket.getInputStream());
                out=new DataOutputStream(mysocket.getOutputStream()); 
                for(int i=0;i<mess.length;i++) {
                  out.writeUTF(mess[i]);
                  String  s=in.readUTF();   //in读取信息,堵塞状态
                  System.out.println("客户收到服务器的回答:"+s);
                  Thread.sleep(500);
                } 
           }
           catch(Exception e) {
                System.out.println("服务器已断开"+e);
           }
       } 
    }
  • 相关阅读:
    表模块模式与事务脚本模式的代码编写
    解决方案下显示的网站名称被追加编号的问题解决方法
    应用层代码
    关于CodeReview(java)(转)
    关于事务的几个概念介绍(转)
    关于JVM的ClassLoader(转)
    svn相关
    .subversion
    linux用户与组的管理(命令加入、手动加入、加入组、用户之间的切换)
    回调函数
  • 原文地址:https://www.cnblogs.com/yihujiu/p/5991266.html
Copyright © 2011-2022 走看看