ʹÓÃvc++ 6.0ÖÆ×÷dll£¬²¢ÔÚjava³ÌÐòÖÐʹÓã¨×ª£©
雖È»JAVAµÄ³Ìʽ¶¼±Ø須ÔÚJAVAµÄ虛擬機Æ÷ÉÏ執ÐУ¬µ«ÊÇÎÒ們¿ÉÒÔÔÚ這²¿機Æ÷ÖдòÒ»個¶´£¬讓JAVA³Ìʽ¿ÉÒÔÖ±½Ó溝ͨ實際µÄ機Æ÷
JNIÊÇÒ»種讓JAVA³Ìʽ¿ÉÒÔÍâ½ÓÍⲿ³ÌʽµÄÒ»種機ÖÆ£¬讓JAVA³Ìʽ¸ü¾ßÓÐ擴³äÐÔ£¬ÏÂÃæ將ʾ範Ò»個簡單µÄ範Àý£¬這個範ÀýÖÐ說Ã÷JAVA³ÌʽÈçºÎ與C語
ÑÔ½Ó軌£¬ÊÂ實ÉÏ×òÌìËù談µÄProlog¾ÍÊÇÀûÓÃ這種·½Ê½Ê¹Java³Ìʽ¿ÉÒÔʹÓÃprolog£¬Í¸過dllºÍnativeµÄ·½Ê½來達³É這項ÈÎ務£¬經過這樣µÄ
測試與實驗Ö®áá讓ÎÒ²»µÃ²»Åå·þjava這個³Ìʽ語ÑÔ
Äã²»ÐèÒª擔ÐijÌʽ·½ÃæµÄ問題£¬Òò為µ×ϵijÌʽ¼Ü構¶¼Ïà當簡單£¬Ö÷ÒªÖ»ÊÇ讓ÎÒ們體驗Ò»ÏÂ
¹¤¾ß½é紹£ºÎÒ將ʹÓÃvisual c++ 6.0來製×÷dll£¬Ê¹ÓÃjava sdk 1.4來編譯ÎÒµÄjava
java²¿·ÖµÄ實×÷
³Ìʽ碼ÈçÏÂ(HelloWorld.java)£º
class HelloWorld {
public native void displayHelloWorld();//×ó·½µÄnativeÐÍ態ÊÇ֪ͨJava這個º¯數會ʹÓõ½Íⲿº¯數
static {
System.loadLibrary("hello");//×󷽵ijÌʽ碼´ú±íÎÒÒª載Èëhello.dllµÄ動態連結£¬hello.dllµÄ製×÷ÎÒÔÚÉÔáá會×ö½é紹
}
public static void main(String[] args) ...{
new HelloWorld().displayHelloWorld();
}
}
當ÄãÍê³ÉÉÏÊöµÄ³Ìʽ֮áᣬ將這個³Ìʽ´æ檔為''HelloWorld.java''ÏÈÓÃ''javac
HelloWorld.java''這個Ö¸Áî將Ëü組譯³ÉHelloWorld.class£¬È»ááʹÓÃ''javah
HelloWorld''產ÉúHelloWorld.h£¬ÔÚHelloWorld.hÖÐÎÒ們ÖªµÀÎÒ們Òª實×÷Ò»個º¯數
Java_HelloWorld_displayHelloWorld(JNIEnv *, jobject); ½ÓÏÂ來ÎÒ將½é紹ÈçºÎÍê³É這個º¯數
&
Ïà¹ØÎĵµ£º
×î½üÓöµ½Ò»¸öÐèÇóÒªÔÚlinuxÏÂÓÃjava µ÷ÓÃmysql¿Í»§¶ËÔ¶³ÌµÇ½mysql·þÎñÆ÷£¬´Ó¿Í»§¶Ë»úÆ÷µ¼Èëmysql½Å±¾£¬´Ómysql·þÎñÆ÷¶Ëµ¼³ö±íÖеÄÊý¾Ý¡£ÒÔÏÂÊÇÓõ½µÄÖ÷Òª·½·¨£º
Java ´úÂë
/**
* µ¼ÈëÊý¾Ý
* @param ½Å±¾µÄµØÖ·ºÍÃû³Æ
* @return ÊÇ·ñ³ ......
ʱ¼ä¶¯Ì¬ÏÔʾ
1.·½·¨Ò» ÓÃTimerTask
ÀûÓÃjava.util.TimerºÍjava.util.TimerTaskÀ´×ö¶¯Ì¬¸üУ¬±Ï¾¹Ã¿´Î¸üпÉÒÔ¿´×÷ÊǼÆÊ±1Ãë·¢ÉúÒ»´Î¡£
´úÂëÈçÏ£º
import java.awt.Dimension;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util ......
Java±à³ÌÄÇЩʶù52—·½·¨ÉùÃ÷
µÚÆßÕÂ ·½·¨
·½·¨µÄÀ´Ô´
·½·¨µÄ¸ÅÄîÀ´Ô´ÓÚÊýѧÉϵĺ¯Êý£¬ÔÚÊýѧÖУ¬µ±Êý¾Ý¾ßÓÐÒ»¶¨µÄ¹æÂÉʱ£¬¾ÍÊÇÓÃÒ»¸öº¯ÊýÀ´´úÂë¸ÃÊý×ֵĹæÂÉ£¬ÀýÈçf£¨n£©=nÔò´ú±í1¡¢2¡¢3¡¢……ÕâÑùµÄÒ»¸öÊýÁС£ÔÚÊýѧÉÏnÊDzÎÊý£¬¶ÔÓÚÈ·¶¨µÄnÖµÖ»ÓÐÒ»¸öf£¨n£©µÄÖµºÍËü¶ÔÓ¦
·½·¨ÊÇÒ»×éΪÁËʵÏÖÌØ¶¨¹¦Ä ......
¼òµ¥µÄ˵µ¥Àý¾ÍÊÇ Ö»ÄÜÓÐÒ»¸öʵÀý£¬ËùÒԵط½Óõ½µÄʵÀý¶¼ÊÇͬһ¸ö¡£
¾ÍºÃÏñ¼ÒÈ˳Է¹£¬×À×ÓÊǵ¥ÀýµÄ£¬´ó¼ÒÓõÄÊÇͬһ¸ö¡£¶øÍëÊǶàÀýµÄ£¬Ã¿È˶¼ÓÐ×Ô¼¸µÄ¡£ ÏÂÃæÊǾßÌåµÄÀý×Ó£º
Javaģʽ֮µ¥Àýģʽ£º
µ¥Àýģʽȷ±£Ò»¸öÀàÖ»ÓÐÒ»¸öʵÀý£¬×ÔÐÐÌṩÕâ¸öʵÀý²¢ÏòÕû¸öÏµÍ ......
package org.bupt.test;
import java.util.ArrayList;
class MyResource {
ArrayList<Integer> arrList= new ArrayList<Integer>();
public MyResource(ArrayList<Integer> arrList) {
this.arrList = arrList;
&nbs ......