我是java socket编程的新手。
我的问题:我有服务器放入while循环以继续工作。
服务器有很多功能要做......其中一个就是添加一些数据。
我在客户端中序列化一个类的对象,然后将其发送到服务器。它成功完成但是当我在工作客户端程序中尝试重复此步骤时,我收到错误java.io.EOFException
我的客户代码:
// some data put in object named (p) of class (Product).
Socket s = new Socket("localhost",4000);
PrintStream ps = new PrintStream(s.getOutputStream());
ps.println("Add Product");
ObjectOutputStream out = new ObjectOutputStream(s.getOutputStream());
out.writeObject(p);
out.close();
我的服务器代码:
int i = 0;
ServerSocket s1 = new ServerSocket(4000);
String request = null;
while(i == 0)
{
Socket ss = s1.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(ss.getInputStream()));
request = in.readLine();
switch(request){
case "Add Product":
ObjectInputStream inn = new ObjectInputStream(ss.getInputStream());
Product pr = (Product)inn.readObject();
inn.close();
e.add_product(pr);
break;
} // end of switch case.
} // end of while loop.