ʹÓÃ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); ½ÓÏÂ來ÎÒ將½é紹ÈçºÎÍê³É這個º¯數
&
Ïà¹ØÎĵµ£º
´úÂëÈçÏ£º
1 String command = " cmd /c C:/Program Files/MySQL/MySQL Server 5.0/bin>mysqldump -h localhost -u root -p aijia > E:/aijia.dmp " ;
2 try {
3 Process process& ......
×î½üÓöµ½Ò»¸öÐèÇóÒªÔÚlinuxÏÂÓÃjava µ÷ÓÃmysql¿Í»§¶ËÔ¶³ÌµÇ½mysql·þÎñÆ÷£¬´Ó¿Í»§¶Ë»úÆ÷µ¼Èëmysql½Å±¾£¬´Ómysql·þÎñÆ÷¶Ëµ¼³ö±íÖеÄÊý¾Ý¡£ÒÔÏÂÊÇÓõ½µÄÖ÷Òª·½·¨£º
Java ´úÂë
/**
* µ¼ÈëÊý¾Ý
* @param ½Å±¾µÄµØÖ·ºÍÃû³Æ
* @return ÊÇ·ñ³ ......
Ŀ¼
1. ¼ò½é
2. °²×°
3. log4j»ù±¾¸ÅÄî
3.1. Logger
3.2. Appender
3.2.1. ʹÓÃConsoleAppender
3.2.2. ʹÓÃFileAppender
3.2.3. ʹÓÃWriterAppender
3.3. Layout
3.4. »ù±¾Ê¾Àý
3.4.1. SimpleLayoutºÍFileAppender
3.4.2. HTMLLayoutºÍWriterAppender
3.4.3. PatternLayoutºÍConsoleAppender
4. ʹÓÃÍⲿ ......