当前位置: 首页 > 软件库 > 程序开发 > 常用工具包 >

JNA

Java本地方法封装库
授权协议 未知
开发语言 Java
所属分类 程序开发、 常用工具包
软件类型 开源软件
地区 不详
投 递 者 尹昂雄
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

JNA(Java Native Access )提供一组Java工具类用于在运行期动态访问系统本地库(native library:如Window的dll)而不需要编写任何Native/JNI代码。开发人员只要在一个java接口中描述目标native library的函数与结构,JNA将自动实现Java接口到native function的映射。下面是一段使用该工具的示例代码:

package com.sun.jna.examples;

import com.sun.jna.Library;
import com.sun.jna.Native;
import com.sun.jna.Platform;

/** Simple example of native library declaration and usage. */
public class HelloWorld {

    public interface CLibrary extends Library {
        CLibrary INSTANCE = (CLibrary)
            Native.loadLibrary((Platform.isWindows() ? "msvcrt" : "c"),
                               CLibrary.class);
   
        void printf(String format, Object... args);
    }

    public static void main(String[] args) {
        CLibrary.INSTANCE.printf("Hello, World\n");
        for (int i=0;i < args.length;i++) {
            CLibrary.INSTANCE.printf("Argument %d: %s\n", i, args[i]);
        }
    }
}

  • JNA

    JNA(Java Native Access)是建立在JNI(Java Native Interface,Java本地调用)技术之上的Java开源框架,JNA提供了一组Java工具类用于在运行期间动态访问系统本地库(Native Library,如Windows的动态链接库*.dll、Linux的共享库*.so)。 使用JNA开发后无需编写任何Native/JNI代码,只需在Java接口中描述目标

 相关资料
  • 本文向大家介绍Nodejs对postgresql基本操作的封装方法,包括了Nodejs对postgresql基本操作的封装方法的使用技巧和注意事项,需要的朋友参考一下 基于nodejs平台对postgresql的增删改查基本操作进行了封装,能满足基本的实际应用,比较复杂的SQL需另外实现。 PG.js文件如下: 用法很简单,如下: 以上这篇Nodejs对postgresql基本操作的封装方法就是小

  • 问题内容: 我有一个项目,我们经常在其中将String转换为int。当出现问题时(例如,不是数字,而是字母,等等),此方法将引发异常。但是,如果我必须到处都处理代码中的异常,这很快就会变得非常难看。我想将其放在一个方法中,但是,我不知道如何返回一个干净的值以表明转换出错。 在C ++中,我可以创建一个方法,该方法接受一个指向int的指针,并让该方法本身返回true或false。但是,据我所知,这在

  • 本文向大家介绍angularjs封装$http为factory的方法,包括了angularjs封装$http为factory的方法的使用技巧和注意事项,需要的朋友参考一下 angularjs有本身封装的ajax服务$http,因为用惯了jQuery的ajax,所以,自己封装了一下angularjs的$http,代码如下 在controller中引入dataFactory和$http即可使用更方便的

  • 本文向大家介绍基于jQuery的ajax方法封装,包括了基于jQuery的ajax方法封装的使用技巧和注意事项,需要的朋友参考一下 ajax (ajax开发)简介 AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。 AJAX = 异步 JavaScript和XML(标准通用标记语言的子集)。

  • 本文向大家介绍java的jdbc简单封装方法,包括了java的jdbc简单封装方法的使用技巧和注意事项,需要的朋友参考一下 学习了jdbc一段时间后感觉自己写一个简单的封装来试试,于是参考的一些资料就写了一下不是多好,毕竟刚学也不太久 首先写配置文件:直接在src下建立一个db.properties文件然后写上内容 之后再写一个类代码如下 之后写主类代码如下 下面是两张图是建立db.propert

  • 本文向大家介绍图文介绍c#封装方法,包括了图文介绍c#封装方法的使用技巧和注意事项,需要的朋友参考一下 c# 使用封装方法 1.计算1-100之间的所有质数(素数)的和。 代码: 2.程序执行结果: 3.用方法实现:有一个数组,找出其中最大值。不能调用数组的Max方法 代码: 4.程序执行结果: 5.用方法实现:有一个字符串数组,请输出最长的字符串。 代码: 6.程序执行结果 总结:以上就是关于c

  • 本文向大家介绍Angular网络请求的封装方法,包括了Angular网络请求的封装方法的使用技巧和注意事项,需要的朋友参考一下 很多时候,我很喜欢angular的编码风格,特别是angular支持typescript之后,完整的生命周期,完美的钩子函数,都是别的语言所无法替代的。 这里我来说说我自己的网络请求封装,某种意义上来说,angular自己的网络请求封装的很好的,我们没有必要再来画蛇添足,

  • 本文向大家介绍Node.js模块封装及使用方法,包括了Node.js模块封装及使用方法的使用技巧和注意事项,需要的朋友参考一下 Node.js中也有一些功能的封装,类似C#的类库,封装成模块这样方便使用,安装之后用require()就能引入调用. 一、Node.js模块封装  1.创建一个名为censorify的文件夹  2.在censorify下创建3个文件censortext.js、packa