JNI:将Java与其他编程语言中的模块连接起来
如果我有一个Java后端,并且有多个使用非JVM语言(如PHP,Python,Perl,Ruby,Node.js等)编写的Web层应用程序,并且如果我想要连接Java和非JVM片断,我使用JNI将它们绑定在一起? 我知道有REST / SOAP Web服务选项,但是如果我使用JNI直接连接Java和非JVM片断,那么比使用Web服务更直接更有效吗? 有没有一种简单而通用的方式来使用JNI连接Java和所有其他非JVM语言?
我不知道简单和普遍。 除了JNI,还有
- 简化的包装和接口生成器
- Java本地访问
- ActiveMQ的
- 阿帕奇骆驼
但是如果我是你,我真的会看SWIG(例如上面的第一个数字)。
您也可以看看Apache Commons Bean脚本框架 。 最后,所有列出的语言都有JVM宿主对象。 例如, 犀牛和栎 , Jython和jRuby和jerl和杂种 。