The Java Native Interface: Programmer's Guide and Specification (The Java Series)
Written for the experienced Java developer,The Java Native Interfacedocuments the latest in native code programming for the Java platform using the Java Native Interface (JNI) with C/C++. Author Sheng Liang built the book around "dos and don'ts," even specifying within the introduction when you should and when you should not use JNI. Though sometimes densely written, this title certainly conveys a good deal of technical information on using native code with Java.After a simple JNI "Hello World" code example, this book explores multiple aspects of the JNI API, starting with the use of Java strings and arrays within native code. Liang follows by transitioning into calling Java members and methods in C/C++. Here the author presents caching strategies for improving the performance of native code that interacts with or executes Java programs, including a discussion of local and global references that incorporates global weak references in Java 2.The book also looks at handling exceptions within C/C++ code, as well as tips for working with Java threads. The author shows how to simplify access to C/C++ code through shared stubs and how to use peer classes to encapsulate native code from within Java. A section on common traps and pitfalls lists some common pitfalls to avoid when working with the JNI. After presenting the JNI specification, the author provides the most immediately useful text in the book--over 100 pages of reference material listing JNI data types and methods.As a reference and programming guide,The Java Native Interfaceprovides concise and timely technical details on getting Java and C/C++ code to coexist within your projects.--Richard Dragan