我目前正在搜索Java网络库.我想要做的是将XML,JSON或其他序列化消息从客户端发送到另一个客户端和/或客户端到服务器.
我的第一次尝试是为每条消息创建一个POJO,另外还有一个MessageWriter用于发送,MessageReader用于接收它.加上套接字和错误处理.这是一个很容易出错的工作.
我正在寻找的是一个从套接字中抽象出来的高级库.此外,它应该支持诸如消息的代码生成之类的东西.
谷歌的协议缓冲区(http://code.google.com/apis/protocolbuffers/)看起来很有前途.但有其他选择吗?重点不在于速度或安全性(目前),它应该是可靠的,并且实施时间较短.
您有多种选择,具体取决于您希望获得的原始套接字的抽象方式.一旦你离开了套接字级别的编程,你就会进入远程领域,
Java的标准远程处理选项:RMI或JMS
在每个客户端和服务器中实现JMX Mbeans,并使用JMX远程处理来调用消息传递操作.
如果您认为您可能想要使用多播,我肯定会检查JGroups.
如果您正在寻找创建自己的协议但想要使用一些现有的构建块,请查看Jakarta Commons Net.答案#1中引用的HttpClient已合并到此包中.
还有一些有趣的专有消息系统,它们具有支持多种平台/语言(如Spread和DBus)的额外优势.
如果不提及WebServices,就无法枚举远程处理选项......但是...... 喋喋不休!
我不完全确定你的消息代码生成是什么意思.你能详细说说吗?