最近手头上在做的一个项目涉及到分布式,要与底层硬件设备进行数据交互,底层设备由厂家提供API,但都时C或C++写的,而这个项目采用JAVA,现在不直到如何去调用C或C++的,或时.dll文件的。
希望有知道的尽快回复我,感激不尽!

解决方案 »

  1.   

    java调用dllgoogle搜索
    获得约 306,000 条结果 (用时 0.16 秒) 
      

  2.   

    文件方式共享内存(linux)管道 (linux)
      

  3.   

    1/调用dll的接口函数
    2/socket通讯;
      

  4.   

    JNI或者JNA
    根据你所说的信息,推荐用JNA
    因为用jni的话,必须你先定义接口,然后生成.h头文件,然后让搞C或者C++的人去实现头文件,生成dll
    如果用JNA的话,只要你有dll,而且知道函数原型就可以直接调用了
      

  5.   

    底层交互采用 C/C++ 编写,将 C/C++ 开放通信接口,Java 只与这个通信接口进行交互。如果要调用什么 DLL 的话,那就太耦合了,也不属于什么分布式。C/C++ 可以开放 WebServices 或者 Socket 作为通信接口,具体的你们自己看着办吧。
      

  6.   

    学习了,我还真的不知道可以这样通过java与c/c++之间做交互...