上一篇:Struts+Hibernate数据表示 >>
Java程序与C语言的接口
例如:
class NativeHello{
public native void nativeHelloWorld();
static{
System.loodlibrary("nativeTest");//调用nativeTest.dll库文件
}
}
第二步:生成头文件
先用javac编译NativeHello.java,再用javah生成c的头文件.h文件
第三步:生成根文件
命令如下:javah -stubs NativeHello (生成NativeHello.c文件)
第四步:编写C程序(此处假定文件名为NativeTest.c)
#include
#include
#include
void Nativehello_nativeHelloWorld(struct HNativeHello *this){
.........
}
/*函数名Nativehello_nativeHelloWorld不能任意指定,可以从javah生成的头文件中查到,也可用
如下方法命名:类名_本地方法名(struct H类名 *this)*/
第五步:编译DLL文件
将nativeTest.c和NativeHello.c编译成DLL库文件,文件名与System.loodlibrary("nativeTest")中的文件同名。
最后讲一下测试的方法,源文件如下:
class UseNative{
public static void main(String []args){
NativeHello nh=new NativeHello();
nh.nativeHelloWorld();
}
}
下一篇:10分钟Hibernate体验 >>
相关文章:
- · Java开源项目Hibernate
- · JDO 2.0查询语言的特点
- · 运行时实现Java的多态性
- · Hibernate获得成功的十大理由
- · Hibernate包作用详解
- · Java动态代理实现AOP
- · J2SE1.5 注释语法
- · Java数据库编程中的技巧
- · JDK 1.5之Generics
- · 掌握JDK1.5枚举类型
- · XML到Java代码的数据绑定之对象
- · 基于JNDI的应用程序开发
- · Java语言中链表和双向链表
- · Java语言的接口与类型安全
- · Java数据库存取技术
- · Java中对HashMap的深度分析
- · JBuilder2005单元测试之捆绑多个用例
- · JBuilder2005单元测试之业务类介绍
- · JBuilder2005单元测试之JUnit框架
- · JBuilder 2005单元测试之慨述
- · 轻松玩转Java配置的Classpath
- · 为Java应用程序添加退出事件响应
- · Java源码分析:深入探讨Iterator模式
- · 初学Java的备忘录
- · 浅析Java中Data类的应用
- · 为什么Java中继承多数是有害的
- · 把WebLogic EJB程序迁移到JBoss上
- · CORBA对象生命周期之实现和内存管理
- · JBuilder2005单元测试体验之测试配置
- · 国内不谈Java--硅谷有感
- · 初学J2ME的一点经验
- · Java还能走多远 四大趋势决定前景
- · Java面向对象概述
- · 如何才算掌握Java
- · C#中利用Markup Service实现HTML解析为DOM Tree
- · 如何使用C#在发送往client的内容上加js代码
- · C#实现根据域名查询ip实例
- · C#中实现DataGrid双向排序
