/
Zakonreal
/
practice07
Обзор
Документация
Войти
/
Zakonreal
/
practice07
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/main/java/org/example/webserver/RequestProcessor.java
55 строк
2 KB
RodinRoman
init
23 май 2025, 02:17
23 май 2025, 02:17
4f61476
Код
Авторство
О чём код?
package org.example.webserver; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import org.example.webserver.storage.UserInfo; import org.example.webserver.storage.UserStorage; import java.util.Collection; import java.util.List; public class RequestProcessor { private final UserStorage storage; private ObjectMapper objectMapper = new ObjectMapper(); public RequestProcessor(UserStorage storage) { this.storage = storage; } public String doGet(String endPoint) { if ("/user/all".equalsIgnoreCase(endPoint)) { Collection<UserInfo> users = storage.getAll(); try { return objectMapper.writeValueAsString(users); } catch (JsonProcessingException e) { return "ERROR"; } } else if ("/author".equalsIgnoreCase(endPoint)) { // можем отдать html страницу String html = "<html><body>Author: Anton</body></html>"; return html; } return "result"; } public String doDelete(String endPoint) { return ""; } // curl -vvv -X POST http://localhost:8080/user -d @data.json public String doPost(String endPoint, String body) { if ("/user".equalsIgnoreCase(endPoint)) { UserInfo info = null; try { info = objectMapper.readValue(body, UserInfo.class); } catch (JsonProcessingException e) { e.printStackTrace(); } storage.add(info); return ""; } return "server response"; } }