
用JAVA做局域网聊天程序的问题
写了一个客户端和一个服务器,我想在打开客户端的同时用socket自动检测和连接到服务器IP,请问要怎么做?我是JAVA新手,尽量说得简单点哈~能不能发送局域网广播,检测哪...
写了一个客户端和一个服务器,我想在打开客户端的同时用socket自动检测和连接到服务器IP,请问要怎么做? 我是JAVA新手,尽量说得简单点哈~
能不能发送局域网广播,检测哪台主机打开了服务器程序呢? 展开
能不能发送局域网广播,检测哪台主机打开了服务器程序呢? 展开
2011-06-25
展开全部
没有分啊,那就少说点,(*^__^*)
server:
server = new ServerSocket(1234);
while(true){
接受连接:
Socket s = server.accept();
new Processer(s).start();//对于每个连接开启线程处理其中的数据:
处理的数据包括 信息是什么,从谁来,到哪里去
,也就是说这个线程实际上负责消息中转
}
client:
Socket s = new Socket(server Address, 1234);
你想往某个人发信息,就带着这个人的标识加入到信息里,发吧
获得输出对象,然后发吧
PrintStream out=new PrintStream(s.getOutPutStream();
out.println(message);
);
out.println();
server:
server = new ServerSocket(1234);
while(true){
接受连接:
Socket s = server.accept();
new Processer(s).start();//对于每个连接开启线程处理其中的数据:
处理的数据包括 信息是什么,从谁来,到哪里去
,也就是说这个线程实际上负责消息中转
}
client:
Socket s = new Socket(server Address, 1234);
你想往某个人发信息,就带着这个人的标识加入到信息里,发吧
获得输出对象,然后发吧
PrintStream out=new PrintStream(s.getOutPutStream();
out.println(message);
);
out.println();
展开全部
热心网友已经给代码了,我补充一句,问题里有一句话有点儿问题,【我想在打开客户端的同时用socket自动检测和连接到服务器IP】,自动检测?这个是没方法的。你打电话还需要知道对方的电话号码才能打啊,那能自动检测。除非你在某个范围内一个个拨试试,直到拨通!不过没人这么干。一般有个配置文件将服务器的地址写到配置文件中。对于初学者直接写到代码里即可。
追问
不可以发送个广播,看看哪台主机打开了服务器程序吗?
追答
看到你的题目,在局域网里是可以的。这样的话我们一般不会用for循环一个个尝试,而是使用UDP的多播,比如用这个类MulticastSocket。这方面有很多资料,你可以上网搜一下,实在不会给我消息,我抽时间帮你试一下。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你不是试试怎么知道呢
拿上做好的东西去参加他们的面试笔试吧
拿上做好的东西去参加他们的面试笔试吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询