Сервер-клієнт

Найпростіший Сервер

import java.io.IOException;

import java.net.ServerSocket;

public class Server {

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

       ServerSocket server = new ServerSocket(8000); // 0-1023 системні порти

       System.out.println("Server started!");

       server.accept(); // Працює довго, поки клієнт не підключиться

       System.out.println("Client connected");

   }

}

Може з'явитися повідомлення від Файерволу - дозволяємо

Для перевірки вводимо в браузері: http://localhost:8000

Сервер

import java.io.*;

import java.net.ServerSocket;

import java.net.Socket;

public class Server {

   public static void main(String[] args)  {

       try(ServerSocket server = new ServerSocket(8000);)

       {

           System.out.println("Server started!");

           while(true){

               try(

                       Socket socket = server.accept();

                       BufferedWriter writer =

                               new BufferedWriter(

                                   new OutputStreamWriter(socket.getOutputStream()));

                       BufferedReader reader =

                               new BufferedReader(

                                       new InputStreamReader(

                                               socket.getInputStream()));

               )

               {

                       String request = reader.readLine();

                       System.out.println("Request: " + request);

                       String response = "HELLO FROM SERVER: " + request.length();

                       System.out.println("Response: " + response);

                       writer.write(response);

                       writer.newLine();

                       writer.flush();

               }

               catch (IOException e) {

                   throw new RuntimeException(e);

               }

           }

       } catch (IOException e) {

           throw new RuntimeException(e);

       }

   }

}

Клієнт

IDEA, Ctrl + Alt + Shift + S - можна в новому модулі

import java.io.*;

import java.net.Socket;

public class Client {

   public static void main(String[] args) {

       try(

                Socket socket = new Socket("localhost",8000);

                BufferedWriter writer =

                        new BufferedWriter(

                           new OutputStreamWriter(socket.getOutputStream()));

                BufferedReader reader =

                        new BufferedReader(

                           new InputStreamReader(socket.getInputStream()));

       )

       {

           System.out.println("Connected to server");

           String request = "Wien";

           System.out.println("Request: " + request);

           writer.write(request);

           writer.newLine();

           writer.flush();

           String response = reader.readLine();

           System.out.println("Response: " + response);

       }

       catch (IOException e){

           e.printStackTrace();

       }

   }

}