Ответ
Работал со следующими ключевыми сетевыми протоколами:
Прикладной уровень (Application Layer):
- HTTP/HTTPS: Разработка RESTful API, клиентов для веб-сервисов, работа с заголовками, методами, кодами состояния.
- WebSocket: Для реализации двусторонней реальном времени связи в приложениях.
- FTP/SFTP: Автоматизация передачи файлов на удалённые серверы.
Транспортный уровень (Transport Layer):
- TCP: Надёжная потоковая передача данных (сокетное программирование, клиент-серверные приложения).
- UDP: Разработка функций, где важна скорость, а не гарантия доставки (например, телеметрия, голосовая связь).
Для работы с базами данных:
- Использовал протоколы СУБД через JDBC (для MySQL, PostgreSQL) и специфичные драйверы.
Пример HTTP-запроса на Java с использованием HttpURLConnection:
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class HttpClientExample {
public static String sendGetRequest(String urlString) throws Exception {
URL url = new URL(urlString);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setConnectTimeout(5000);
connection.setReadTimeout(5000);
int responseCode = connection.getResponseCode();
System.out.println("Response Code: " + responseCode);
try (BufferedReader in = new BufferedReader(
new InputStreamReader(connection.getInputStream()))) {
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
return response.toString();
}
}
}