Junior — Middle
Jakie protokoły sieciowe używałeś w swojej praktyce?
sobes.tech AI
Odpowiedź od AI
W praktyce z Java często używa się następujących protokołów sieciowych:
- TCP (Transmission Control Protocol) — do niezawodnego przesyłania danych, na przykład przy tworzeniu aplikacji klient-serwer z użyciem gniazd.
- UDP (User Datagram Protocol) — dla aplikacji, w których ważna jest szybkość, a nie niezawodność, na przykład w strumieniowym wideo lub grach.
- HTTP/HTTPS — do komunikacji z usługami internetowymi i API REST.
- FTP — do przesyłania plików.
Przykład użycia gniazda TCP w Java:
import java.net.*;
import java.io.*;
public class SimpleClient {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("example.com", 80);
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out.println("GET / HTTP/1.1\r\nHost: example.com\r\n\r\n");
String responseLine;
while ((responseLine = in.readLine()) != null) {
System.out.println(responseLine);
}
in.close();
out.close();
socket.close();
}
}