Sajmon

SimpleHttpServer

Sep 17th, 2012
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.18 KB | None | 0 0
  1.  
  2. /**
  3.  *
  4.  * @author Sajmon
  5.  */
  6.  
  7. package src;
  8.  
  9. import java.io.BufferedReader;
  10. import java.io.IOException;
  11. import java.io.InputStreamReader;
  12. import java.net.ServerSocket;
  13. import java.net.Socket;
  14.  
  15. public class Server {
  16.    
  17.     private ServerSocket serverSocket;
  18.     private Socket socket;
  19.     private BufferedReader reader;
  20.    
  21.     public Server() {
  22.         try {
  23.             serverSocket = new ServerSocket(10001);
  24.             System.out.println("Server is initialising...");
  25.         }
  26.         catch (IOException ex) { }
  27.     }
  28.    
  29.    
  30.     public void initConnection() {
  31.         try {
  32.             socket = serverSocket.accept(); // caka na pripojenie clienta, pokial sa klient nepripoji, caka sa na tomto riadku
  33.             System.out.println("Connection with Client is created!");
  34.         }
  35.         catch (IOException ex) { }
  36.     }
  37.    
  38.    
  39.     public void readDataFromClient() throws IOException {
  40.         String buffer;
  41.         reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); // ziskam si InputStream pre citanie dat zo Socketu
  42.         while (true) {
  43.             buffer = reader.readLine(); // precita riadok zo Socketu
  44.             System.out.println(buffer); // kontrolne ho vypisem
  45.             if (buffer.equals("end")) {
  46.                 break;
  47.             }
  48.         }
  49.         socket.close();
  50.     }
  51. }
  52.  
  53.  
  54.  
  55.  
  56.  
  57. /**
  58.  * @author Sajmon
  59.  */
  60.  
  61. package src;
  62.  
  63. import java.io.*;
  64. import java.net.Inet4Address;
  65. import java.net.Socket;
  66. import java.net.UnknownHostException;
  67.  
  68. public class Client {
  69.    
  70.     private Socket socket;
  71.     private PrintWriter output;
  72.     private BufferedReader reader;
  73.    
  74.     public Client() {
  75.         try {
  76.             socket = new Socket(Inet4Address.getByName("localhost"), 10001);
  77.             System.out.println("Client is initialising...");
  78.         }
  79.         catch (UnknownHostException ex) { }
  80.         catch (IOException ex) { }
  81.     }
  82.    
  83.     public void initConnection() {
  84.         try {
  85.             output = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()), true); // ziskam si OutputStream pre zapis dat na Socket a tieto data si bude Server tahat
  86.         }
  87.         catch (IOException ex) { }
  88.     }
  89.    
  90.     public void sendDataToServer() throws IOException {
  91.         reader = new BufferedReader(new InputStreamReader(System.in)); // citanie z klavesnice
  92.         String buffer;
  93.         while (true) {
  94.             buffer = reader.readLine();
  95.             output.println(buffer); // zapis riadku na Socket a odtial si ho bude Server tahat
  96.             if (buffer.equals("end")) {
  97.                 break;
  98.             }
  99.         }
  100.         socket.close();
  101.         System.out.println("Server is stopped.");
  102.     }
  103. }
  104.  
  105.  
  106.  
  107. /**
  108.  * @author Sajmon
  109.  */
  110.  
  111. package src;
  112.  
  113. import java.io.IOException;
  114.  
  115. public class Main {
  116.    
  117.     public static void main(String[] args) throws IOException {
  118.         Server server = new Server();
  119.         server.initConnection();
  120.         server.readDataFromClient();
  121.        
  122.         /** Spustit v inom IDE **/
  123.        
  124.         //Client client = new Client();
  125.         //client.initConnection();
  126.         //client.sendDataToServer();
  127.     }
  128. }
Advertisement
Add Comment
Please, Sign In to add comment