我现在想明白的问题:
1.服务器将客户端列表存储在什么中比较好!hashtable?array?other?
2.我找了几个DEMO程序,服务器端读数据都是通过循环检测看是否有数据发送过来?能不能向DELPHI中一样,注册个事件,当底层SOCKET接收到数据包之后,自动触发接收数据的时间。
3.一般的网络通讯程序之间的数据传输都是以字节流的方式传递的,能不能直接传输字符串,这样会不会出现JAVA和DELPHI中的数据类型不统一的问题?因为以字节流的方式传输,写通信协议的时候比较麻烦。
4.有经验的大哥,介绍一下JAVA的NIO包!
5.最后请大家说说用JAVA做网络通信的时候,应该注意那些细节?讲讲大家的经验!
6.最好介绍一些比较成熟的开源项目的框架!
1.服务器将客户端列表存储在什么中比较好!hashtable?array?other?
2.我找了几个DEMO程序,服务器端读数据都是通过循环检测看是否有数据发送过来?能不能向DELPHI中一样,注册个事件,当底层SOCKET接收到数据包之后,自动触发接收数据的时间。
3.一般的网络通讯程序之间的数据传输都是以字节流的方式传递的,能不能直接传输字符串,这样会不会出现JAVA和DELPHI中的数据类型不统一的问题?因为以字节流的方式传输,写通信协议的时候比较麻烦。
4.有经验的大哥,介绍一下JAVA的NIO包!
5.最后请大家说说用JAVA做网络通信的时候,应该注意那些细节?讲讲大家的经验!
6.最好介绍一些比较成熟的开源项目的框架!
服务器端需要用到持久层技术,hashtable?array这些都有容量的限制。
2.我找了几个DEMO程序,服务器端读数据都是通过循环检测看是否有数据发送过来?能不能向DELPHI中一样,注册个事件,当底层SOCKET接收到数据包之后,自动触发接收数据的时间。
你用socket等于自己放弃j2ee架构了。建议用http协议。速度方面不用担心。这样server可以用servlet与客户端通讯。然后你第3个问题也解决了。然后你的第6个问题就有很多选择了
首先谢谢你的意见,我有几个问题需要与你讨论!
1.你所说的持久层技术能不能具体给我解释一下,刚学这个东东。
2.我需要实现类似聊天室的功能,服务器收到数据包之后需要将数据转发到客户端。这个用HTTP协议不行吧?麻烦解释一下。
你们就在网上找点资料给我贴点吧!尤其是JAVA.NIO包的资料!:)
持久层嘛就是象ejb或hiberate之类的东东.
那样的话,客户端改动太大了!
[email protected] 谢谢!
能一并转发一份么?
谢谢
[email protected]
服务端建立一个等待线程,等待客户端,当接收到时分配一个线程与客户端连接.
另外建议各位兄弟如果没有特别的需要,不要用老的集合类,如Vector,HashTable,这些都有新的替代类,如Vector可以用ArrayList代替,HashTable可以用HashMap代替,这些新类速度都比老的类快的,
说了一大堆东东
能不能给点代码啊 谢谢拉
我想问问,服务器端的一个Channel是不是就是一个单独的线程呢?我的程序中是否需要为每个Channel分配单独的线程?
到这个帖子接分:http://community.csdn.net/Expert/topic/3284/3284749.xml?temp=.8676111
Vector,HashTable没有线程安全问题吗?
这些集合框架的容量是不是都是动态的?
不过使用ArrayList可以在自己的程序中同步,也不会有问题。