JavahÉú³ÉJNIÍ·Îļþ
¼ÙÉ蹤³ÌĿ¼ÏÂÓÐbinÎļþ¼Ð£¬bin´æ·Å±àÒëºÃµÄclassÎļþ;
ÔÚbinĿ¼Ï£¬
......\koalaTest\bin>javah -classpath . -jni com.jni.vikitest
È»ºóÔÚ.....\koalaTest\bin ¼´¿ÉÕÒµ½Ò»¸öcom_jni_Calculator.hÍ·Îļþ£¬Éú³É³É¹¦£¡ ......
[ÕªÒª]
±¾ÎĽéÉÜÁËһϵÁлùÓÚWindows CEµÄJavaÐéÄâ»úÒÔ¼°¼¯³É¿ª·¢»·¾³£¬ÆäÖаüÀ¨ IBM¹«Ë¾µÄVisual Age Micro Edition
£¨¾ÍÊÇÏÖÔÚµÄWebSphere Studio Device Developer£©,
Sun¹«Ë¾µÄPersonal Java, WabaSoft ·¢ÆðµÄWaba£¬Insignia¹«Ë¾µÄJeode (¾ÍÊÇÏÖÔÚEsmertecµÄJeode)£¬Nsicom¹«Ë¾µÄCrEmeÒÔ¼°New
Monics¹«Ë¾µÄPERC¡£ÔÚJavaÐéÄâ»úµÄÖ§³ÖÏ£¬Ò»¸öǶÈëʽӦÓóÌÐò²»µ«¿ÉÒÔÔËÐÐÔÚ²»Í¬Ó²¼þƽ̨²»Í¬°æ±¾µÄWindows
CE²Ù×÷ϵͳÉÏ£¬»¹¿ÉÒÔÇáÒ×µÄÒÆÖ²µ½ÆäËûǶÈëʽ²Ù×÷ϵͳÉÏ¡£Òò´Ë£¬ÔÚǶÈëʽӦÓóÌÐò¿ª·¢·½Ã棬ǶÈëʽJava±ÈǶÈëʽVC»òÕßÊÇǶÈëʽVB¾ßÓв»¿ÉÌæ´úµÄÓÅÊÆ¡£
[½éÉÜ]
Windows CE£¬¸ù¾Ý΢Èí¹«Ë¾ÔÚWindows CE and Pocket PC: FAQ
Öе͍Ò壬ÊDzÙ×÷ϵͳ¿ª·¢ÉÌÓÃÒÔ¹¹½¨×¨ÓвÙ×÷ϵͳµÄһϵÁÐ×é¼þ¡£ÔʼÉè±¸ÖÆÔìÉÌ(OEM) ¿ÉÒÔÏò΢Èí¹«Ë¾¹ºÂòÒ»¸ö³ÆÎª“Windows
CEƽ̨¿ª·¢ÏµÍ³”µÄ¼¯³É¿ª·¢»·¾³²¢ÀûÓøÃϵͳ×é×°ºÍ±àÒë»ùÓÚWindows CEµÄ²Ù×÷ϵͳ£¬¸Ã²Ù×÷ϵͳ°üÀ¨Ò»ÏµÁлùÓÚWindows CE
µÄ×é¼þÒÔ¼°¿ª·¢ÉÌ×ÔÐпª·¢µÄÓ¦ÓÃÈí¼þ»òÕßÊÇÉ豸Çý¶¯³ÌÐò¡£ÓÉÓÚ»ùÓÚWindows CE µÄ²Ù×÷ϵͳ¾ßÓÐÓë΢ÈíWindows
ϵÁвÙ×÷ϵͳÏàÀàËÆµÄÓû§½çÃæ£¬Òò´ËÊܵ½ÖÚ¶à×îÖÕÓû§ÒÔ¼° ......
ÓÃjpa²»Äܽ¨±í£¬sqlÓï¾äÊǶԵ쬲»¹ý¾ÍÊDz»Äܽ¨£¬Í¬ÑùµÄsql£¬ÔÚÏÂÃæµÄjdbcÖоͿÉÒÔ£¬¿ÉÄÜÊÇ¿ò¼ÜµÄÏÞÖÆ£¬Ï£Íû¸ßÈËÖ¸µã
import java.net.URL;
import java.sql.*;
public class Create {
public Create() {
}
public static void main(String[] args){
String url = "jdbc:oracle:thin:@10.0.1.3:1521:SDCDB";
String query = "CREATE TABLE MYFIRST" + "(id INT,name CHAR(10))";
String sql="insert into MYFIRST values('1','liming')";
String sql1="insert into MYFIRST values('2','mm')";
String sql2="delete MYFIRST where id=2";
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection(url, "test", "test");
Statement stmt = conn.createStatement();
stmt.executeUpdate(query);
stmt.executeUpdate(sql);
stmt.executeUpdate(sql1);
stmt.executeUpdate(sql2);
System.out.println("Create Success!");
stmt.close();
conn.close();
}
catch(java.lang.ClassNotFoundExcep ......
ÓÃjpa²»Äܽ¨±í£¬sqlÓï¾äÊǶԵ쬲»¹ý¾ÍÊDz»Äܽ¨£¬Í¬ÑùµÄsql£¬ÔÚÏÂÃæµÄjdbcÖоͿÉÒÔ£¬¿ÉÄÜÊÇ¿ò¼ÜµÄÏÞÖÆ£¬Ï£Íû¸ßÈËÖ¸µã
import java.net.URL;
import java.sql.*;
public class Create {
public Create() {
}
public static void main(String[] args){
String url = "jdbc:oracle:thin:@10.0.1.3:1521:SDCDB";
String query = "CREATE TABLE MYFIRST" + "(id INT,name CHAR(10))";
String sql="insert into MYFIRST values('1','liming')";
String sql1="insert into MYFIRST values('2','mm')";
String sql2="delete MYFIRST where id=2";
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection(url, "test", "test");
Statement stmt = conn.createStatement();
stmt.executeUpdate(query);
stmt.executeUpdate(sql);
stmt.executeUpdate(sql1);
stmt.executeUpdate(sql2);
System.out.println("Create Success!");
stmt.close();
conn.close();
}
catch(java.lang.ClassNotFoundExcep ......
ÔÚjavaµ÷ÓÃexe£¬com¿ÉÖ´ÐÐÎļþºÍbat£¬cmdÅú´¦ÀíÎļþ
Ò»¡£ÔËÐÐexeÎļþ
1. Java JDKÀïÒѾÌṩÁ˵÷Óõķ½·¨£¬²»ÔÚÀÛ׸£¬´úÂëÈçÏ¡£
try {
String command = "notepad";
Process child = Runtime.getRuntime().exec(command);
} catch (IOException e) {
}
¶þ¡£ÔËÐÐbat£¨Åú´¦Àí£©Îļþ
1.
import java.io.*;
public class Test
{
public static void main(String[] args)
{
System.out.println("args : " + java.util.Arrays.asList(args));
try
{
String command = "test.bat";
  ......
½«java±àÖ¯³É.classºó£¬Èç¹ûÖ»ÊÇÓÃjavaÃüÁîÀ´Ö´ÐÐ×ܾõµÃ²»ÊÇÌ«¹ýñ«£¬ÕÒ¸ö°ì·¨Éú³ÉÏñexeÎļþÒ»ÑùÓÃÊó±êË«»÷±ã¿ÉÖ´ÐеÄÎļþ£¬Ó¦¸ÃÊǺÜÓÐȤµÄ°¡¡£ÕâÀïÎÒÓÃÁËÒ»¸öÃû×Ö½Ð×öexe4jµÄÃâ·ÑСÈí¼þ£¬¸Ð¾õ²»´í¡£
¡¡¡¡Ê×ÏÈ£¬µ±È»ÊÇÒªÏÂÔØ¸öexe4j¡£ÎÒµÄÊÇ2.2°æ±¾µÄ£¬license£ºL-g782dn2d-1f1yqxx1rv1sqd¡£
¡¡¡¡½Ó×Å£¬½«ÄãҪѡÔñºÃÄã¼´½«·¢²¼µÄ.classÎļþ¾Í²»ÓÃϸ˵ÁË¡£ÏÂÃæÊÇ´´½¨jarÎļþ£¬ÕâÀïÎÒÓÃÒ»¸öÃû×Ö½Ð×öd:MyJavaTest.classµÄ
ÎļþÀ´¾ÙÀý£¬ÁíÍâ×¢Ò⻹Ҫ±àдһ¸öÈ·¶¨main_classµÄÎļþmanifest.mf£¬ÔÚÕâÀïmainfest.mfºÍĿ¼MyJavaÊÇÔÚͬһ¸öÄ¿
¼Ï£¨ÕâÀïÊǶ¼ÔÚD:£©£¬È»ºóʹÓÃÈçÏÂÃüÁ
jar cvfm test.jar manifest.mf MyJava
¡¡¡¡ manifest.mfµ±³õ»¹²»ÖªµÀÔõôд£¬·Ç³£µÄ×¥¿ñ¡£¡£¡£ºÇºÇ¡£ÆäʵºÜ¼òµ¥£¬´úÂëÈçÏ£º
Manifest-Version: 1.0
Main-Class: MyJava.Test
Created-By: Hanic
¡¡¡¡Ö»ÒªMain- Classд¶Ô¾Í¿ÉÒÔÁË¡£ÕâÑù£¬Ò»¸ötest.jarÎļþ¾ÍÉú³ÉÁË£¬ÕâÀïÎҾͲ»Ï¸ËµjarµÄ¾ßÌ幦ÄÜÁË¡£µ«ÎªÁËÈ·±£³É¹¦£¬ÎÒÃÇ¿ÉÒÔÔÙÓÃÏÂÃæµÄÖ¸ÁîÖ´ÐÐһϸոÕÉú³ÉµÄtest.jar£º
java -jar test.jar
¡¡¡¡ÔõôÑù£¬ÊDz»ÊÇ¿ÉÒÔºÜ˳ÀûµÄ½øÐУ¿Èç¹ûÊÇ£¬ ÄÇÎÒÃǾͿÉÒÔ¿ªÊ¼½øÐпÉÖ´ÐÐÎļþµÄ´´½¨ÁË¡£
¡ ......
¿É¹©³ÌÐòÀûÓõÄ×ÊÔ´£¨ÄÚ´æ¡¢CPUʱ¼ä¡¢ÍøÂç´ø¿íµÈ£©ÊÇÓÐÏ޵ģ¬ÓÅ»¯µÄÄ¿µÄ¾ÍÊÇÈóÌÐòÓþ¡¿ÉÄÜÉÙµÄ×ÊÔ´Íê³ÉÔ¤¶¨µÄÈÎÎñ¡£ÓÅ»¯Í¨³£°üº¬Á½·½ÃæµÄÄÚÈÝ£º¼õС´úÂëµÄÌå»ý£¬Ìá¸ß´úÂëµÄÔËÐÐЧÂÊ¡£±¾ÎÄÌÖÂÛµÄÖ÷ÒªÊÇÈçºÎÌá¸ß´úÂëµÄЧÂÊ¡£
ÔÚJava³ÌÐòÖУ¬ÐÔÄÜÎÊÌâµÄ´ó²¿·ÖÔÒò²¢²»ÔÚÓÚJavaÓïÑÔ£¬¶øÊÇÔÚÓÚ³ÌÐò±¾Éí¡£Ñø³ÉºÃµÄ´úÂë±àдϰ¹ß·Ç³£ÖØÒª£¬±ÈÈçÕýÈ·µØ¡¢ÇÉÃîµØÔËÓÃ
java.lang.StringÀàºÍjava.util.VectorÀ࣬ËüÄܹ»ÏÔÖøµØÌá¸ß³ÌÐòµÄÐÔÄÜ¡£ÏÂÃæÎÒÃǾÍÀ´¾ßÌ嵨·ÖÎöÒ»ÏÂÕâ·½ÃæµÄÎÊÌâ¡£
1¡¢ ¾¡Á¿Ö¸¶¨ÀàµÄfinalÐÞÊηû
´øÓÐfinalÐÞÊηûµÄÀàÊDz»¿ÉÅÉÉúµÄ¡£ÔÚJavaºËÐÄAPIÖУ¬ÓÐÐí¶àÓ¦ÓÃfinalµÄÀý×Ó£¬ÀýÈçjava.lang.String¡£ÎªStringÀà
Ö¸¶¨final·ÀÖ¹ÁËÈËÃǸ²¸Çlength()·½·¨¡£ÁíÍ⣬Èç¹ûÖ¸¶¨Ò»¸öÀàΪfinal£¬Ôò¸ÃÀàËùÓеķ½·¨¶¼ÊÇfinal¡£Java±àÒëÆ÷»áѰÕÒ»ú»áÄÚÁª
£¨inline£©ËùÓеÄfinal·½·¨£¨ÕâºÍ¾ßÌåµÄ±àÒëÆ÷ʵÏÖÓйأ©¡£´Ë¾ÙÄܹ»Ê¹ÐÔÄÜÆ½¾ùÌá¸ß50% ¡£
2¡¢ ¾¡Á¿ÖØÓöÔÏó¡£ÌرðÊÇString ¶ÔÏóµÄʹÓÃÖУ¬³öÏÖ×Ö·û´®Á¬½ÓÇé¿öʱӦÓÃStringBuffer ´úÌæ¡£ÓÉÓÚϵͳ²»½öÒª»¨Ê±¼äÉú³É¶ÔÏó£¬ÒÔºó¿ÉÄÜ»¹Ð軨ʱ¼ä¶ÔÕâЩ¶ÔÏó½øÐÐÀ¬»ø»ØÊպʹ¦Àí¡ ......