JAVA通过JNI操作系统api
JAVA程序可以通过适配器,适配器通过JNI(java native interface)去调用已经写好的C++的程序,C++程序通过win32 api可以访问windows中的程序。其中,JNI是整个过程中最重要的。
Java 程序都因为虚拟机的关系,和底 层完全地隔离开来。可以一旦使用JNI之后,Java 虚拟机会开放一扇门户,和Java 程序可以突破Java 虚拟机的限制,直接呼叫底层操作系统的函数库。但是这么一来,会引发安全性的问题。因为Java 的安全机制完全由Java执行环境之中的Security Manager 来控制,并配合Policy File 来设定控制权限。因此,如果要使用JNI,一定要先考虑安全性的议题,否则您的Java 程序就在不知不觉中为破坏者开启了后门而不自觉。您必须在Java层级(也就是执行权限尚未穿越Java 虚拟机前)就完成安全性上的限制。另外,使用了JNI,JAVA的跨平台特性也会失去。
使用JNI访问底层操作系统函数库的步骤:
1、在JAVA类中定义native方法。
2、用JAVAH指令编译源文件,生成对应的c++ .h头文件
3、新建一个动态链接库项目,用这个头文件编写相应的c++代码
4、使用这个c++代码生成动态链接库(需要指定-Djava.library.path=dll所在目录)
- 大小: 6.9 KB
分享到:
相关推荐
关于JDK有两个问题是很容易一直困扰Java程序员的地方:一个是CLASSPATH的问题,其实从原理上来说,是要搞清楚JRE的ClassLoader是如何加载Class的...推荐看一下王森的《Java深度历险》,对这两个问题进行了深入的探讨。
《Java深度历险》这本书是Java开发者的一本深入学习指南,它涵盖了Java编程语言的核心概念、高级特性以及实际开发中的应用技巧。通过本书,读者可以系统地了解Java的各个方面,从而提升自己的编程技能和问题解决能力...
Java深度历险 深入Java 2 SDK 深入类别载入器 Java与MS Office 用Visual Studio.net操控Java虚拟机 package与import机制 Ant 附录A.Java 2 SDK原版码概观
java深度历险.rarjava深度历险.rarjava深度历险.rarjava深度历险.rarjava深度历险.rar
《王森 Java深度历险》是一本专门为Java初学者精心编写的教材,旨在引领读者深入探索Java编程的世界。王森,作为业界知名的IT专家,以其丰富的教学经验和深厚的编程功底,将复杂的Java知识以易懂的方式呈现出来,...
《Java 深度历险》是一本专为Java开发者准备的深度学习书籍,它涵盖了Java编程语言的核心概念、高级特性以及实战应用。通过这本书,读者可以深入理解Java的内部机制,提升编程技能,实现从初级到高级的跨越。下面...
《Java深度历险》这本书主要探讨了Java编程语言的深度知识,涵盖了从早期版本到Java 2 SDK的演进历程。Java是由Sun Microsystems开发的一种高级编程语言,最初被称为OAK,后来发展为Java 1.0,并逐步演变为Java 1.1...
### Java深度历险CH02:深入类别加载器 #### 概述 在《Java深度历险》这本书的第二章中,作者深入探讨了Java语言中的一个重要概念——**类别加载器**(Class Loader)。这一章节旨在揭示Java语言的动态性,并通过...
《JAVA深度历险》是由知名Java专家王森撰写的一本深度探索Java编程的著作,PDF格式使得读者可以方便地在电子设备上阅读和学习。这本书是Java开发者提升技能、深化理解的重要参考资料,涵盖了从基础到高级的众多Java...
Java深度历险 Java深度历险 Java深度历险 Java深度历险 Java深度历险
Java深度历险(合集).pdf,深度介绍!
《Java深度历险.pdf》这份文档主要围绕Java技术的一些深入理解和应用展开,涵盖Java的运行环境(JDK和JRE)、Java虚拟机(JVM)、Java程序的运行机制以及Java开发工具的配置等多方面的知识。接下来,我将对文档中...
《Java深度历险》与《深入Java虚拟机》是两本深受Java开发者喜爱的经典书籍,它们涵盖了Java编程语言和Java虚拟机(JVM)的高级主题,旨在帮助读者深入理解Java平台的工作原理。 《Java深度历险》这本书通常会涵盖...
《Java深度历险》是一本面向已有一定Java基础的学习者,旨在深化理解并提升Java编程技能的专业书籍。作者王森,以其丰富的编程经验和深入的理解,为读者揭示了Java语言的精髓与复杂性,帮助程序员从初级阶段跨越到...