Java. Реализация сайта через потоки
В общем, передо мной стоит такая задача: Я решил создать код, который бы поднимал банальный сайт с использованием потоков. На единственной странице сайта есть только "Hello world [param]". //слово парам нужно изменить на любое, без изменения исходного html-файла.
Нужно найти байты слова "param" и заменить на любое другое слово по желанию. Как можно реализовать мою задумку? К сожалению, мне на ум ничего не приходит.
import java.io.*;
import java.net.InetSocketAddress;
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import com.sun.net.httpserver.HttpServer;
public class Program {
public static void main(String[] args) throws Exception {
HttpServer server = HttpServer.create(new InetSocketAddress(8080), 0);
server.createContext("/html", new MyHandler());
server.setExecutor(null);
server.start();
}
static class MyHandler implements HttpHandler {
@Override
public void handle(HttpExchange t) throws IOException {
byte[] bytes = new byte[256];
try (InputStream is = t.getRequestBody()) {
while (is.read(bytes) != -1);
}
try {
FileInputStream in = new FileInputStream("C:\\Users\\User\\IdeaProjects\\Test\\src\\html.html");
bytes = in.readAllBytes();
} catch (Exception e) {
System.out.println(e);
}
String response = "This is the response";
t.sendResponseHeaders(200, bytes.length);
OutputStream os = t.getResponseBody();
os.write(bytes);
os.close();
}
}
}
Добавлю html для полного понимания.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<p>Hello world, [param]</p>
</body>
</html>
`