JAVA JNI
http://blog.csdn.net/hbcui1984/archive/2009/12/10/4980805.aspx
一、概述
JNI(java native interface),JAVA本地接口调用,目的是为了JAVA可以调用本地程序,主要优点有:
提高效率,解决性能问题
防止反编译,提高核心代码安全性
增强本机接口调用
嵌入式开发应用
如下通过一个最简单的小demo,演示如何进行jni开发。
二、demo演示
1. 新建JAVA文件
新建一个java类,如下:
view plaincopy to clipboardprint?
package chb.test.jni;
public class HelloJni {
public native void sayHello();
static {
System.loadLibrary("hellojni");
}
public static void main(String[] args) {
new HelloJni().sayHello();
}
}
package chb.test.jni;
public class HelloJni {
public native void sayHello();
static {
System.loadLibrary("hellojni");
}
public static void main(String[] args) {
new HelloJni().sayHello();
}
}
HelloJni.java在硬盘上的位置:D:\workspace\MyWork\src\chb\test\jni\HelloJni.java
2. 生成class文件
1) 利用javac命令进行编译,进入D:\workspace\MyWork\src\chb\test\jni目录,利用
view plaincopy to clipboardprint?
javac HelloJni.java
javac HelloJni.java
2) 利用IDE,例如我利用eclipse开发,自动编译,编译后的文件位于:D
相关文档:
java回调机制
回调概念:
软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用;回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用是一种类似 ......
windows xp下配置JDK环境变量:
1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08;
2.安装完成后,右击“我的电脑”,点击“属性”;
3.选择“高级”选项卡,点击“ ......
在java中,假设你有一个user 对象的list,此user对象封装了用户的id, first name, last name and age. 然后你想调用一个web service(eg. UserService.deleteUsersByIds(List<Integer> userIds) 去删除数据库中指定的这些user。 听起来似乎不太困难,不是么? 你所需要只是将 List<User> 转化成List&l ......
某些网站允许软件开发社团通过发布开发者指南、白皮书、FAQs【常见问题解答】和源代码以实现信息的共享。随着信息量的增长,和几个开发者贡献出自己的知识库,于是网站提供搜索引擎来搜索站点上现有的所有信息。虽然这些搜索引擎对文本文件的搜索可以做的很好,但对开发者搜索源代码做了比较严格的限制。搜索引擎认为源代码 ......