オブジェクトをシリアル化し、httpserver から送信する必要があります サーバーからクライアントに文字列を送信する方法は既に知っていますが、オブジェクトを送信する方法がわかりません
だから私はこのコードを持っています:
public class Test {
public static void main(String[] args) throws Exception {
HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
server.createContext("/test", new MyHandler());
server.setExecutor(null); // creates a default executor
server.start();
}
static class MyHandler implements HttpHandler {
public void handle(HttpExchange t) throws IOException {
String response = "This is the response";
//this part here shows how to send a string
//but i need to send an object here
t.sendResponseHeaders(200, response.length());
OutputStream os = t.getResponseBody();
os.write(response.getBytes());
os.close();
}
}
}
だから私はGoogleを検索しようとしましたが、結果はありませんでした.コードを変更しようとしました(JavaのHttpServerに慣れていないため、機械的に何をしているのかよくわかりません)。
SendResponse obj = new SendResponse();
ObjectOutputStream objOut = new ObjectOutputStream();
t.sendResponseHeaders(200, objOut);
objOut.writeObject(obj);
objOut.close();
しかし、Eclipse は、ObjectOutputStream() コンストラクターが表示されず、httpExchange が引数 (int,ObjectInputStream) に適用できないことを示すエラーを表示します。
どうすればこれを修正できますか?よろしくお願いいたします。