您的位置:首页 > 编程语言

简单的socket编程——服务端,客户端

2017-09-14 14:11 218 查看
客户端:

package cn.jason.net.tcp.test1;
import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.io.PrintWriter;

import java.net.InetAddress;

import java.net.Socket;
public class JabberClient {
 public static void main(String[] args) throws IOException {
  /*

   * 客户端

   */

  InetAddress addr = InetAddress.getByName(null);

  System.out.println("addr="+addr);

  

  Socket socket = new Socket(addr,JabberServer.PORT);

  

  try{

   System.out.println("socket = "+socket);

   BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

   PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);

   for(int i = 0;i<10;i++){

    out.println("howdy"+i);

    String str = in.readLine();

    System.out.println(str);

   }

   out.println("END");

   

  }finally{

   System.out.println("closing...");

   socket.close();

  }   

 }

}

服务端:

package cn.jason.net.tcp.test1;
import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.io.PrintWriter;

import java.net.ServerSocket;

import java.net.Socket;
public class JabberServer {
 //服务器先定义一个端口常量

 public static final int PORT = 8080;

 public static void main(String[] args) throws IOException {
  /*

   * 服务器

   */

  ServerSocket s = new ServerSocket(PORT);       

  System.out.println("started:"+s);

  try{

   Socket socket = s.accept();

   try{

    System.out.println("Connection acception:"+socket);

    BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

    PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);

    while(true){

     String str= in.readLine();

     if(str.equals("END"))

      break;

     System.out.println("Echoing:"+str);

     out.println(str);

    }

   }finally{

    System.out.println("Closing...");

    socket.close();

   }

  }finally{

   s.close();

  }  

 }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: