JNA (Java Native Access) 不通过JNI直接调用本地代码

来源:互联网 发布:漫威the end知乎 编辑:程序博客网 时间:2024/05/01 22:31

相比JNI,JNA使用起来更灵活,无论是在内存管理方面还是编程的便捷性上,JNA都是值得称道的。

JNA利用代理实现来完成Java和Natvie的映射,在使用JNA编程的时候,首先要声明一个和本地库相同的方法,在实例化的时候,通过Native.loadLibrary('lib',ConnectorInterface.class),其中的ConnectorInterface中的方法声明和你要调用的C库函数的声明相同,只不过参数可能已经转换过了。

 

在现在版本JNA中已经提供了Win32中User32,Kernel32的本地库的Java版本。

下面贴一段测试通过的代码

 

原创粉丝点击