C#.NET远程处理服务器和Java客户端
本文关键字:服务器 Java 客户端 处理 NET 程处理 | 更新日期: 2023-09-27 18:25:28
我想知道是否可以让Java客户端与用C#编写的服务器进行通信。NET。
维基百科上写着:
"在客户端,对远程对象的任何请求都由.NET远程处理运行时通过通道对象代理,通道对象封装了实际的传输模式,包括TCP流、HTTP流和命名管道。因此,通过实例化适当的通道对象,.NET远程处理应用程序可以支持不同的通信协议,而无需重新编译应用程序。 "
这就是为什么我认为Java应用程序应该可以连接到ServerIP:Port
,并通过TCP通道交换甚至是复杂的对象。
问题是,是否有一个库可以将接收到的数据转换回有效的Java对象?
或者还有更好的方法吗?
任何帮助都会很棒。非常感谢。
Stefan
您不能直接将复杂的Java对象加载到中。Net或反之亦然,但您可以在客户端&服务器,并利用JSON(如bas的答案所示)来序列化&通过通道传输这些对象。
这意味着当一个对象从A->B发送时,它会经过以下顺序:
- 从A中的托管对象Seralize到JSON
- 通过传输通道从A->B发送JSON
- 在B处以字符串形式接收JSON对象
- 将对象反序列化为托管对象供B使用
步骤1&4是类似NetwonSoft Json的地方。网络图书馆将对你有很大帮助。任何网络协议都可以沿线路传输JSON对象。
您可以使用JSON或XML格式发送和接收数据
C#的JSON:http://james.newtonking.com/pages/json-net.aspx
用于Java的JSON:http://json.org/java/