目前我正在使用网络服务在 Java 应用程序和 .net 应用程序之间交换信息。 所有主要数据类型(double、int、string 等)都已正确交换。 一个简单的数组也被正确传输。
但是,我正在尝试将 HashMap 从 java 传输到 .net(然后返回,虽然我知道 .net 没有 HashMap,所以我可能会使用 Dictionary 或某种类型)。 关于如何执行此操作的任何想法? 我知道我可以只使用数组,但如果可能,我想要一个更好的解决方案。
更具体地说,它会是这样的:
@WebMethod
public HashMap<String, HashMap<String, Double>>
foo(@WebParam(name = "bar") String path){...}
最佳答案
如果可以的话,我建议以 JSON 格式交换数据。它具有以下优点
- 它比 xml 更简洁
- 更容易使用网络带宽更少
- 在客户端解析开销。
但是,如果您的 map 对象具有循环引用,那么您可能不得不绕圈子。看看Jackson library用于转换为 JSON
关于c# - Java和c#之间的Web服务——复杂数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9292754/