简单局域网聊天 JAVA开发 - Java / Java SE
我这里想写一个简单的局域网开发软件!当我写到服务器的时候我就郁闷了,建一个HashMap集合用来存客户端的Socket,我们服务端应该是要不停的去接受客户端的信息,和把客户端的信息发送出去……写到这里停笔了,不知道 怎么向 下写了,就是这里的不停的发,和接, ……那位大哥大姐,能一下小弟,客户端的自己可以搞定,那个没有服务器端复杂……
为每个连接的socket都建立一条接收消息的线程
接分的 呀 ,要的 话我 可以传给你呀。
到我博客看看就知道怎么写了。。。很easy的。。
思路要清晰。
首先要清楚服务器端是做什么的,很明显在现在的情况下服务器端得做两件事:
1、循环等待接收客户端的连接。
2、接收来自各个客户端发的消息,再把它们转发出去。
很明显,这不是单线程可以完成的工作,所以自然而然就要采用多线程。
主线程:Java code:
while(true){ //或者用一个boolean变量控制,看需求
Socket s = ss.accept()
……
Client c = new Client();
list.add(c)
}
主线程每接收到一个客户端的连接,就将该客户端加到自己的集合中
分线程:接收来自客户端的消息包,然后将它转发给自己集合中的所有其它客户端
Java code:
DatagramSocket ds = new DatagramSocket(s); //采用UDP协议接收消息
DatagramPacket dp = new DatagtamPacket(ds);
wh
相关问答:
如: @superwaring("unchecked");
这个里面都可以取哪些值啊,还有类似的 @superwaring标签有哪些啊
没用过。。
看jee的api
javax.persistence里
@superwaring("unchecked");只是忽略 ......
程序如下:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page language="java" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%@ page import ......
id name datetime
1 a 2010-05-13 10:15:00
2 b 2010-05-14 09:10:00
3 d 2010-05-14 10:10:00
如何将距离目前最近的那个记录的name 更新为“x”呢
谢谢咯 啊 呵呵
update table_n ......