java调用dll方法总结

 更新时间:2017年12月22日 15:09:29   作者:追梦程序员  
本篇文章小编给大家整理了java调用dll的方法的总结,有需要的朋友参考学下一下吧。

常用的就是jni,jnative(基于jni封装了自己的jar包) 注意:java调用dll,必须dll里做了对应的处理。列如:方法名必须为_java_包名_类名_方法名

使用JNI调用dll步骤

新建一个java项目,将dll文件放入src下

配置改项目环境jre下native目录,指向src

项目jdk一定不要用eclipse自带的,用自己安装的jdk路径

按照dll里的目录顺序新建目录及类

声明跟dll里一样的方法,方法前加native关键字(注意参数类型)

代码静态块里写(不要后缀):

static {
	System.loadLibrary("testDll");
}

之后写main方法就可以调用了。如有报错,注意观察报错信息,可能会缺少依赖dll文件

简单封装JNI

简单封装一个调用dll的类

代码可以在资源共享,我的代码中下载

调用代码(主要是static块代码变了),DllUtil这块代码在共享里下载

static {
	try {
		DllUtil.extractFromJar("testDll.dll", "testDll.dll", System
				.getProperty("java.io.tmpdir"));
		System.load(System.getProperty("java.io.tmpdir") + "\\testDll.dll");
		System.out.println("load testDll.dll success!!");
	} catch (Exception e) {
		System.out.println("testDll.dll error:" + e.getMessage());
	}
}

以上就是本次文章的全部内容,更多的内容大家可以在脚本之家搜索,感谢你的支持。

相关文章

  • Servlet3.0新特性全解

    Servlet3.0新特性全解

    Servlet3.0新特性有异步处理支持、新增的注解支持、可插性支持,下面我们将逐一讲解这些新特性,通过下面的学习,读者将能够明晰了解Servlet 3.0的变化,并能够顺利使用它进行日常的开发工作
    2023-05-05
  • java使用itext导出PDF文本绝对定位(实现方法)

    java使用itext导出PDF文本绝对定位(实现方法)

    下面小编就为大家带来一篇java使用itext导出PDF文本绝对定位(实现方法)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • SpringBoot详细讲解通过自定义classloader加密保护class文件

    SpringBoot详细讲解通过自定义classloader加密保护class文件

    这篇文章主要介绍了SpringBoot通过自定义classloader加密class文件,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • Springboot 如何实现filter拦截token验证和跨域

    Springboot 如何实现filter拦截token验证和跨域

    这篇文章主要介绍了Springboot 如何实现filter拦截token验证和跨域操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • mybatis-plus 版本不兼容问题的解决

    mybatis-plus 版本不兼容问题的解决

    这篇文章主要介绍了mybatis-plus 版本不兼容问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • springboot启动类如何剔除扫描某个包

    springboot启动类如何剔除扫描某个包

    这篇文章主要介绍了springboot启动类如何剔除扫描某个包,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Java求字符串长度的方法举例

    Java求字符串长度的方法举例

    这篇文章主要给大家介绍了关于Java求字符串长度的相关资料,Java中的字符串是一种常见的数据类型,用于表示文本数据,文中给出了详细的代码实例,需要的朋友可以参考下
    2023-10-10
  • java 中如何实现 List 集合去重

    java 中如何实现 List 集合去重

    这篇文章主要介绍了java 中如何实现 List 集合去重,List 去重指的是将 List 中的重复元素删除掉的过程,下文操作操作过程介绍需要的小伙伴可以参考一下
    2022-05-05
  • 聊聊Spring MVC JSON数据交互的问题

    聊聊Spring MVC JSON数据交互的问题

    我们在开发中后端经常需要接受来自于前端传递的Json字符串数据,怎么把Json字符串转换为Java对象呢?下面小编给大家带来了Spring MVC JSON数据交互的问题,感兴趣的朋友一起看看吧
    2021-10-10
  • Java 中 Form表单数据的两种提交方式

    Java 中 Form表单数据的两种提交方式

    本文给大家分享java中form表单数据的两种提交方式,分别是get从制定的服务器中获取数据,pos方式提交数据给指定的服务器处理,本文给大家介绍的非常详细,需要的朋友参考下吧
    2016-12-12

最新评论