Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

java JNI ³¢ÊÔ

 ¡¡¡¡Ê×ÏÈÒýÓÃһƪÎÄÕ£¬½éÉÜÒ»¸ö¼òµ¥µÄJNIµÄµ÷ÓõĹý³Ì¡£¡¡¡¡JAVAÒÔÆä¿çƽ̨µÄÌØÐÔÉîÊÜÈËÃÇϲ°®£¬¶øÓÖÕýÓÉÓÚËüµÄ¿çƽ̨µÄÄ¿µÄ£¬Ê¹µÃËüºÍ±¾µØ»úÆ÷µÄ¸÷ÖÖÄÚ²¿ÁªÏµ±äµÃºÜÉÙ£¬Ô¼ÊøÁËËüµÄ¹¦ÄÜ¡£½â¾öJAVA¶Ô±¾µØ²Ù×÷µÄÒ»ÖÖ·½·¨¾ÍÊÇJNI¡£¡¡¡¡JAVAͨ¹ýJNIµ÷Óñ¾µØ·½·¨£¬¶ø±¾µØ·½·¨ÊÇÒÔ¿âÎļþµÄÐÎʽ´æ·ÅµÄ£¨ÔÚWINDOWSƽ̨ÉÏÊÇDLLÎļþÐÎʽ£¬ÔÚUNIX»úÆ÷ÉÏÊÇSOÎļþÐÎʽ£©¡£Í¨¹ýµ÷Óñ¾µØµÄ¿âÎļþµÄÄÚ²¿·½·¨£¬Ê¹JAVA¿ÉÒÔʵÏֺͱ¾µØ»úÆ÷µÄ½ôÃÜÁªÏµ£¬µ÷ÓÃϵͳ¼¶µÄ¸÷½Ó¿Ú·½·¨¡£ ¡¡¡¡¼òµ¥½éÉܼ°Ó¦ÓÃÈçÏ£º ¡¡¡¡Ò»¡¢JAVAÖÐËùÐèÒª×öµÄ¹¤×÷ ¡¡¡¡ÔÚJAVA³ÌÐòÖУ¬Ê×ÏÈÐèÒªÔÚÀàÖÐÉùÃ÷Ëùµ÷ÓõĿâÃû³Æ£¬ÈçÏ£º
static { System.loadLibrary(“goodluck”); }
¡¡¡¡ÔÚÕâÀ¿âµÄÀ©Õ¹Ãû×Ö¿ÉÒÔ²»ÓÃд³öÀ´£¬¾¿¾¹ÊÇDLL»¹ÊÇSO£¬ÓÉϵͳ×Ô¼ºÅжϡ£ ¡¡¡¡»¹Ðè¶Ô½«Òªµ÷Óõķ½·¨×ö±¾µØÉùÃ÷£¬¹Ø¼ü×ÖΪnative¡£ÇÒÖ»ÐèÒªÉùÃ÷£¬¶ø²»ÐèÒª¾ßÌåʵÏÖ¡£ÈçÏ£º
public native static void set(int i); public native static int get();
¡¡¡¡È»ºó±àÒë¸ÃJAVA³ÌÐòÎļþ£¬Éú³ÉCLASS£¬ÔÙÓÃJAVAHÃüÁJNI¾Í»áÉú³ÉC/C++µÄÍ·Îļþ¡£ ¡¡¡¡ÀýÈç³ÌÐòtestdll.java£¬ÄÚÈÝΪ£º
public class testdll { static { System.loadLibrary("goodluck"); } public native static int get(); public native static void set(int i); public static void main(String[] args) { testdll test = new testdll(); test.set(10); System.out.println(test.get()); } }
¡¡¡¡ÓÃjavac testdll.java±àÒëËü£¬»áÉú³Étestdll.class¡£ ¡¡¡¡ÔÙÓÃjavah testdll£¬Ôò»áÔÚµ±Ç°Ä¿Â¼ÏÂÉú³Étestdll.hÎļþ£¬Õâ¸öÎļþÐèÒª±»C/C++³ÌÐòµ÷ÓÃÀ´Éú³ÉËùÐèµÄ¿âÎļþ¡£ ¡¡¡¡¶þ¡¢C/C++ÖÐËùÐèÒª×öµÄ¹¤×÷ ¡¡¡¡¶ÔÓÚÒÑÉú³ÉµÄ.hÍ·Îļþ£¬C/C++ËùÐèÒª×öµÄ£¬¾ÍÊÇ°ÑËüµÄ¸÷¸ö·½·¨¾ßÌåµÄʵÏÖ¡£È»ºó±àÒëÁ¬½Ó³É¿âÎļþ¼´¿É¡£ÔÙ°Ñ¿âÎļþ¿½±´µ½JAVA³ÌÐòµÄ·¾¶ÏÂÃ棬¾Í¿ÉÒÔÓÃJAVAµ÷ÓÃC/C++ËùʵÏֵŦÄÜÁË¡£ ¡¡¡¡½ÓÉÏÀý×Ó¡£ÎÒÃÇÏÈ¿´Ò»ÏÂtestdll.hÎļþµÄÄÚÈÝ£º
/* DO NOT EDIT THIS FILE - it is machine generated */ #include /* Header for class testdll */ #ifndef _Included_testdll #define _Included_testdll #ifdef __cplusplus extern "C" { #endif /* * Class: testdll * Method: get * Signature: ()I */ JNIEXPORT jint JNICALL Java_testdll_get (JNIEnv *, jclass); /* * Class: testdll * Method: set * Signature: (I)V */ JNIEXPORT void J


Ïà¹ØÎĵµ£º

Java¹Ø¼ü×Öfinal¡¢staticʹÓÃ×ܽá

 
Ò»¡¢final

¡¡¸ù¾Ý³ÌÐòÉÏÏÂÎÄ»·¾³£¬Java
¹Ø¼ü×ÖfinalÓГÕâÊÇÎÞ·¨¸Ä±äµÄ”»òÕß“ÖÕ̬µÄ”º¬Ò壬Ëü¿ÉÒÔÐÞÊηdzéÏóÀà¡¢·Ç³éÏóÀà³ÉÔ±·½·¨ºÍ±äÁ¿¡£Äã¿ÉÄܳöÓÚÁ½ÖÖÀí½â¶øÐèÒª×èÖ¹¸Ä±ä£ºÉè¼Æ»òЧÂÊ¡£
finalÀ಻Äܱ»¼Ì³Ð£¬Ã»ÓÐ×ÓÀ࣬finalÀàÖеķ½·¨Ä¬ÈÏÊÇfinalµÄ¡£
final·½·¨²»Äܱ»×ÓÀàµÄ·½· ......

Javaµ÷ÓÃOracleÊý¾Ý¿âµÄ·ÖÒ³´æ´¢¹ý³Ì

 ×î½üÏîÄ¿½ø¶È±È½Ï»ºÂý£¬³õ²½Ñо¿ÁËÒ»ÏÂOracleµÄ´æ´¢¹ý³Ì£¬½«´úÂëÌù³öÀ´¡£
 Ê×ÏÈÏÈÌù³öÀ´OracleµÄ·ÖÒ³·ÖÒ³´æ´¢¹ý³Ì´úÂë°É¡£
 1.ÕâÊÇ°üµÄ´úÂë
 create or replace package DB_Oper is
  -- Author  : LIUBING
  -- Created : 2009-10-28 15:01:30
  -- Purpose : ²âÊÔOracleµ ......

JavaÖзÓÉÆ÷ģʽ

 import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException;
import java.io.Serializable;
import java.rmi.Na ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ