Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java和.NET应用程序互操作性_Java_.net_Interop - Fatal编程技术网

Java和.NET应用程序互操作性

Java和.NET应用程序互操作性,java,.net,interop,Java,.net,Interop,我有一个Java应用程序和一个.NET应用程序都位于两台不同的机器上,需要在这两个应用程序之间设计一个通信层。任何输入或想法都会非常有用。下面提到的是这两个应用程序之间交互的性质 Java应用程序向.NET应用程序发送大量数据 数据延迟应保持在最低限度 .NET应用程序还应该能够请求某些数据(同步/异步) 使用Web服务是.Net和Java最容易交谈的方式——我们在我的公司已经取得了很大成功(在.Net端使用apache的cxf和标准代码) 但是,如果延迟和大小是主要要求,那么您应该使用套接字

我有一个Java应用程序和一个.NET应用程序都位于两台不同的机器上,需要在这两个应用程序之间设计一个通信层。任何输入或想法都会非常有用。下面提到的是这两个应用程序之间交互的性质

  • Java应用程序向.NET应用程序发送大量数据
  • 数据延迟应保持在最低限度
  • .NET应用程序还应该能够请求某些数据(同步/异步)

    • 使用Web服务是.Net和Java最容易交谈的方式——我们在我的公司已经取得了很大成功(在.Net端使用apache的cxf和标准代码)


      但是,如果延迟和大小是主要要求,那么您应该使用套接字—这两种平台都提供了相当广泛的套接字框架,并且它将为您提供尽可能最好的性能。

      我认为这可以通过在java端设置xml webservices层来实现。您可以将RestEasy用于restful web服务。只有我的0.2美分。

      我们在使用JAX-WS(Java 6中标准运行时的一部分)提供web服务方面有很好的经验。它们明确地将.NET兼容性列为目标,并且在IDE中得到了很好的支持


      Endpoint.publish()机制允许小型、简单的部署。

      另一种选择是某种形式的MOM(面向消息的中间件)。有很多实现,但首先要看的可能是,它同时具有Java和C#绑定(以及其他绑定)


      我并不是说这比使用web服务好,它完全取决于您的需求。

      您可以使用web服务。Jax-WS是java中允许您使用它的API。作为这个API的实现,我推荐metro(),它已经随SDK提供,并且与netbeans有很好的集成

      正如已经有人提到的,您可以使用套接字,并在其上创建通信通道,但这有一些问题,从安全性开始。不要在实际应用中使用此选项

      如果您需要这方面的帮助,您可以开始阅读以下内容:
      这取决于您的要求。简单的方法通常是Web服务。但是,如果您希望在另一个平台上实现更高的性能或更细粒度的API访问,您可能需要考虑JNBridgePro(www. jnBig.com)。


      披露:我在JNBridge工作。

      @Yedhu:你为什么不试试Web服务呢?