服务器连接

时间:2012-06-03 17:38:14

标签: java sockets connection objectinputstream

我正在用Java做自己的服务器。我需要做一个套接字连接并从客户端接收大量对象。我做到了,它有效,但我不知道这是否是最好(最快)的解决方案。以下是我的代码示例:

try {
    serverSocket=new ServerSocket(18234, 1000);
} catch (IOException e) {
    System.out.print("Server failed..");
    e.printStackTrace();
}

Object x;
ObjectInputStream ois;
System.out.println("Waiting for connection...");
Socket connection= serverSocket.accept();
System.out.println("Connection received from " + connection.getInetAddress().getHostName());

while(true){
    ois = new ObjectInputStream(connection.getInputStream());
    x=ois.readObject();
    System.out.println(x.getString());
    if(x.getString().equals("END")) break;
}

问题是,当我尝试接收新对象时,我必须一直做新的ObjectInputStream ..这个解决方案是否正确?我必须做真正快速的服务器,而且我认为新的ObjectInputStream总是太贵了。

1 个答案:

答案 0 :(得分:0)

在套接字的两端使用相同的ObjectOutputStream和ObjectInputStream。您关于被迫使用每个对象的新对象的陈述是不正确的。