社区
Java SE
帖子详情
请问在java中,怎样用socket传送一个已经串行化的对象
iamok
2005-03-21 11:50:18
如题目
用socket传一个串行化的对象,还有服务器端怎么接受这个对象?
...全文
226
5
打赏
收藏
请问在java中,怎样用socket传送一个已经串行化的对象
如题目 用socket传一个串行化的对象,还有服务器端怎么接受这个对象?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gtwdaizi
2005-08-31
打赏
举报
回复
这个帖子我怎么运行不成功啊。客户端输入get stream后就没有反应了,这是怎么回事啊???
vgvg
2005-03-21
打赏
举报
回复
楼上的回答的真详细
GJA106
2005-03-21
打赏
举报
回复
import java.io.*;
import java.net.*;
import java.net.ServerSocket;
import java.util.Vector;
public class ObjectServer {
ServerSocket ss=null;
Socket s=null;
ObjectInputStream inStream=null;
ObjectOutputStream outStream=null;
FileInputStream fin = null;
ObjectObj obj = null;
Vector vector = new Vector(2);
public ObjectServer() {
try{
ss=new ServerSocket(7650);
// s.setSoTimeout(3000);
obj = new ObjectObj();
obj.setID(1);
obj.setName("wukesong");
vector.add(obj);
ObjectObj obj2 = new ObjectObj();
obj2.setID(5);
obj2.setName("asdfasdfasd");
vector.add(obj2);
}catch(Exception e){
e.printStackTrace();
}
}
void waitForClient(){
try{
while(true){
s=ss.accept();
System.out.println("已经连接");
outStream=new ObjectOutputStream(s.getOutputStream());
this.inStream = new ObjectInputStream(s.getInputStream());
System.out.println("已经连接2");
outStream.writeObject(vector);
outStream.flush();
Thread.sleep(1000);
}
}catch(Exception e){
e.printStackTrace();
}
}
public static void main(String[] args)
{
ObjectServer socketServer1 = new ObjectServer();
socketServer1.waitForClient();
}
}
GJA106
2005-03-21
打赏
举报
回复
import java.net.*;
import java.io.*;
import java.util.*;
public class ObjectClient{
Socket socket=null;
DataInputStream inStream=null;
DataOutputStream outStream=null;
FileOutputStream fout = null;
public ObjectClient() {
try{
System.out.println("connection request...");
socket=new Socket("192.168.0.173",7650);
System.out.println("connection OK");
ObjectInputStream oin = new ObjectInputStream(socket.getInputStream());
System.out.println("get stream...");
//socket.setSoTimeout(3000);
Vector vector = (Vector)oin.readObject();
int size = vector.size();
System.out.println("大小 :"+vector.size());
for(int i=0;i<size;i++)
{
ObjectObj obj = (ObjectObj)vector.get(i);
System.out.println("id="+obj.getID()+"");
System.out.println("name="+obj.getName());
}
oin.close();
socket.close();
}catch(Exception e){
e.printStackTrace();
}
}
public static void main(String[] args) {
ObjectClient socketClient1 = new ObjectClient();
}
}
iamok
2005-03-21
打赏
举报
回复
谢谢GJA106(中文字符)
尹成
JAVA
快速入门
Java
还包括
一个
类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序
中
使用。例如,
Java
提供产生图形用户接口部件的类(
java
.awt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的...
Java
内核原理入门到实战(大神必经之路)
Java
语言是安全的:
Java
通常被用在网络环境
中
,为此,
Java
提供了
一个
安全机制以防恶意代码的攻击。除了
Java
语言具有的许多安全特性以外,
Java
对通过网络下载的类具有
一个
安全防范机制(类 ClassLoader),如...
Java
高级API
技术简介:
Java
高级特性涉及面向
对象
思想的核心内容,在
Java
体系
中
发挥着重要作用,设计模式、框架等也是建立在此基础之上。网络编程涉及
Socket
思想及相关API的使用,是网络应用的基础。输入/输出流是文件操作的...
Java
大数据培训学校全套教材--10)
Socket
所以这套课程都能自己学下来,等于上了培训学 校一次,完全可以找个
java
工程师的工作了。 本门课程为"
java
大数据培训学校全套教材"系列课程的第十篇,学习TCP,UDP,URL类让大家对
Socket
编程打下好的基础。
网络聊天室
Java
基础版(
Socket
_Swing编程)仿QQ聊天
主要使用技术均为
Java
SE基础,手把手带你构建在线聊天室,需要
Java
SE基础才能进行实战与开发,学习前需要掌握的技能有:逻辑基础、面向
对象
、异常处理、集合框架、IO流、网络编程、多线程、GUI技术,学完本套课程,...
Java SE
62,615
社区成员
307,318
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章