我必须序列化一个对象并从 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();
}
}
}
所以我试图搜索谷歌但没有结果,我试图以这种方式更改代码(机械地不知道我在做什么,因为我不习惯 Java 中的 HttpServer):
SendResponse obj = new SendResponse();
ObjectOutputStream objOut = new ObjectOutputStream();
t.sendResponseHeaders(200, objOut);
objOut.writeObject(obj);
objOut.close();
但是 eclipse 向我显示了一个错误,它告诉我 ObjectOutputStream() 构造函数不可见并且 httpExchange 不适用于参数 (int,ObjectInputStream)
你知道我该如何解决这个问题吗?预先感谢您的帮助 !