求教:网络数据流不能传输对象(ObjectOutputStream)

master_hq 2005-12-28 01:48:29
小弟最近编了一个客户端向服务器传数据的程序,用的是ObjectOutputStream与ObjectInputStream中的writeObject()与readObject()方法。客户端每一秒钟向服务器发送一个STest1类的对象。当不知为什么只有第一次接收的数据是正确的,以后都是接收与第一次相同的数据。很是郁闷啊,
(一)服务器程序
import java.io.*;
import java.net.*;

public class TCPServer {
ServerSocket serverSocket;
Socket socket;
ObjectInputStream ois;
ObjectOutputStream oos;
public TCPServer() {
try
{ serverSocket=new ServerSocket(6556);
socket = serverSocket.accept();
ois=new ObjectInputStream(socket.getInputStream());

STest1 sTest1=new STest1();
for(int i=0;i<10;i++)
{
sTest1=(STest1)ois.readObject();
System.out.println(sTest1.getData());
Thread.sleep(2000);

}


}
catch(Exception err)
{
System.out.println(err.toString());
}
}

public static void main(String args[])
{
TCPServer frame=new TCPServer();
}
}

(二)客户端程序
public class TCPClient {
Socket socket;
ObjectOutputStream oos;
ObjectInputStream ois;
public TCPClient() {
try
{
socket=new Socket("localhost",6556);
oos=new ObjectOutputStream(socket.getOutputStream());
STest1 sTest1=new STest1();
for(int i=0;i<10;i++)
{
sTest1.setData(i);
oos.writeObject(sTest1);
oos.flush();
System.out.println("SSSSSSSSS: "+sTest1.getData());
Thread.sleep(1000);
}

}
catch(Exception err)
{
System.out.println(err.toString());
}
}

public static void main(String args[])
{
TCPClient frame=new TCPClient();
}
}
(三)发送的类
import java.io.Serializable;

public class STest1 implements Serializable {
int data;
public STest1() {
}
public void setData(int newData)
{
data=newData;
}
public int getData()
{
return data;
}
}

(四)运行结果
客户端
testobjectstream.TCPClient
SSSSSSSSS: 0
SSSSSSSSS: 1
SSSSSSSSS: 2
SSSSSSSSS: 3
SSSSSSSSS: 4
SSSSSSSSS: 5
SSSSSSSSS: 6
SSSSSSSSS: 7
SSSSSSSSS: 8
SSSSSSSSS: 9

服务器
testobjectstream.TCPServer
0
0
0
0
0
0
0
0
0
0
...全文
201 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mail25 2005-12-29
  • 打赏
  • 举报
回复
不用多线程
master_hq 2005-12-29
  • 打赏
  • 举报
回复
呵呵,问题已经解决了,是在发送数据时每次都必须新建一个对象,似乎与多线程无关
leiyy 2005-12-28
  • 打赏
  • 举报
回复
服务器端的类要是多线程的,为每一个连接提供一个线程

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧