Advertisement
LukacikPavel

chat

Feb 13th, 2019
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.30 KB | None | 0 0
  1. package cviko1A;
  2.  
  3. import java.io.IOException;
  4. import java.net.ServerSocket;
  5. import java.net.Socket;
  6. import java.util.concurrent.ExecutorService;
  7. import java.util.concurrent.Executors;
  8.  
  9. public class ChatServer {
  10.  
  11.     public static void main(String[] args) {
  12.         try (ServerSocket ss = new ServerSocket(9000)) {
  13.             ExecutorService es = Executors.newCachedThreadPool();
  14.  
  15.             while (true) {
  16.                 Socket s = ss.accept();
  17.                 ChatTask task = new ChatTask(s);
  18.                 es.execute(task);
  19.             }
  20.  
  21.         } catch (IOException e) {
  22.             // TODO Auto-generated catch block
  23.             e.printStackTrace();
  24.         }
  25.     }
  26.  
  27. }
  28. =========================================================
  29. package cviko1A;
  30.  
  31. import java.io.BufferedReader;
  32. import java.io.IOException;
  33. import java.io.InputStream;
  34. import java.io.InputStreamReader;
  35. import java.net.Socket;
  36.  
  37. public class ChatTask implements Runnable {
  38.  
  39.     private Socket s;
  40.  
  41.     public ChatTask(Socket s) {
  42.         this.s = s;
  43.     }
  44.  
  45.     @Override
  46.     public void run() {
  47.         InputStream is;
  48.         try {
  49.             is = s.getInputStream();
  50.             InputStreamReader isr = new InputStreamReader(is);
  51.             BufferedReader br = new BufferedReader(isr);
  52.  
  53.             String line;
  54.             do {
  55.                 line = br.readLine();
  56.                 System.out.println(s.getInetAddress() + ": " + line);
  57.             } while (line != null);
  58.  
  59.         } catch (IOException e) {
  60.             // TODO Auto-generated catch block
  61.             e.printStackTrace();
  62.         } finally {
  63.             try {
  64.                 s.close();
  65.             } catch (IOException e) {
  66.                 // TODO Auto-generated catch block
  67.                 e.printStackTrace();
  68.             }
  69.         }
  70.     }
  71.  
  72. }
  73. ================================================
  74. package cviko1A;
  75.  
  76. import java.io.IOException;
  77. import java.io.OutputStream;
  78. import java.io.PrintWriter;
  79. import java.net.Socket;
  80. import java.net.UnknownHostException;
  81. import java.util.Scanner;
  82.  
  83. public class ChatClient {
  84.  
  85.     public static void main(String[] args) {
  86.         try (Socket socket = new Socket("158.197.35.78", 9000)) {
  87.             OutputStream os = socket.getOutputStream();
  88.             PrintWriter pw = new PrintWriter(os);
  89.  
  90.             Scanner scanner = new Scanner(System.in);
  91.             while (true) {
  92.                 pw.println(scanner.nextLine());
  93.                 pw.flush();
  94.             }
  95.  
  96.         } catch (UnknownHostException e) {
  97.             // TODO Auto-generated catch block
  98.             e.printStackTrace();
  99.         } catch (IOException e) {
  100.             // TODO Auto-generated catch block
  101.             e.printStackTrace();
  102.         }
  103.     }
  104.  
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement