Skip to content

Instantly share code, notes, and snippets.

@sewera
Created May 10, 2020 14:10
Show Gist options
  • Save sewera/3db78ac7955eec67916d017dd98f9a7c to your computer and use it in GitHub Desktop.
Save sewera/3db78ac7955eec67916d017dd98f9a7c to your computer and use it in GitHub Desktop.
SimpleClient – najprostszy klient w Javie, standardowe biblioteki, dużo komentarzy
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket;
public class SimpleClient {
public static void main(String args[]) {
/*
* Client request -> PrintWriter -> OutputStream -> Client Socket
* ||
* vv
* Network
* ||
* vv
* Handle req <- Buffered Reader <- InputStream <- Server Socket
* ||
* vv
* Server response -> PrintWriter -> OutputStream -> Server Socket
* ||
* vv
* Network
* ||
* vv
* Handle resp <- Buffered Reader <- InputStream <- Client Socket
*/
try {
// Otwarcie gniazda, na które klient będzie wysyłał - port musi być
// taki sam, jak w serwerze
Socket socket = new Socket("localhost", 21370);
// Strumień na którym wysyłamy informacje na serwer
OutputStream os = socket.getOutputStream();
// Writer na strumień
PrintWriter pw = new PrintWriter(os, true);
// Przykładowe informacje dawane na writer (client request)
pw.println("Client request 12345");
// Strumień na którym odczytujemy informacje zwrotne z serwera (server response)
InputStream is = socket.getInputStream();
// Reader ze strumienia
BufferedReader br = new BufferedReader(new InputStreamReader(is));
System.out.println(br.readLine());
socket.close();
br.close();
} catch (Exception e) {
System.err.println("Client exception: " + e);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment