C/C++ÓÚJavaÖ®¼äµÄ»¥Ïàµ÷ÓÃ
ÀûÓÃJNI¼¼Êõ£¬¿ÉÒÔ×öµ½C/C++ÓëJavaÖ®¼äµÄÏ໥µ÷Óá£
1¡¢Javaµ÷ÓÃC/C++½Ó¿Ú
Õâ¸öÊÇJNI×î»ù±¾µÄÓ¦Óã¬JNIÓкܶàÕâ·½ÃæµÄÀý×Ó´úÂë¡£Ò»°ã°ÑC/C++д³É¶¯Ì¬Á´½Ó¿â£»ÔÚJava³ÌÐòÔÚLoadLibrary£¬ÀûÓÃnative½Ó¿Ú£¬¼´¿ÉÍê³Éµ÷Óá£
2¡¢C/C++»Øµ÷Java½Ó¿Ú
ÕâÖÖÓ÷¨£¬JNIµÄÀý×ӱȽÏÉÙ¡£Æäʵ£¬Ò²±È½Ï¼òµ¥£¬JNIÒ²ÌṩÁËÕâÑùµÄ½Ó¿Ú¡£±ÈÈ磬GetObjectClass£¬GetMethodID£¬CallObjectMethod£¬NewObject£¬FindClassµÈ½Ó¿Ú£¬¼´¿ÉÍê³ÉC/C++¶ÔJava½Ó¿ÚµÄµ÷Óá£
ÁíÍ⣬ÐèҪעÒâµÄÒ»¸öµØ·½ÊÇ£¬¹ØÓÚsignature¡£±ÈÈ磬ÔÚ jmethodID GetMethodID(jclass clazz, const char *name,
const char *sig) º¯ÊýÖеĵÚÈý¸ö²ÎÊý£¬¾ÍÐèÒªº¯ÊýµÄsignature¡£ÄÇÔõô֪µÀJava·½·¨µÄsignatureÄØ£¿
ÆäʵJDK£¬ÌṩÁ˲鿴Java·½·¨µÄsignature¡£·½·¨ÈçÏ£º
(1)¡¢CMD£¬È¥µ½xxx.classËùÔÚµÄĿ¼¡£
(2)¡¢ÊäÈëÃüÁjavap -s xxx
(3)¡¢½á¹û³ÊÏÖÔÚÄãÑÛÇ°¡£
ÑÓÉ죺Android NDKÒ²ÀàËÆ£¬Í¬Ñù¿ÉÒÔ×öµ½C/C++ÓëJavaÖ®¼äµÄ»¥µ÷¡£
Ïà¹ØÎĵµ£º
MD5Ëã·¨ÊÇÒ»Öַdz£ÓÅÐãµÄ¼ÓÃÜËã·¨¡£
MD5¼ÓÃÜËã·¨Ìص㣺Áé»îÐÔ¡¢²»¿É»Ö¸´ÐÔ¡£
½éÉÜMD5¼ÓÃÜËã·¨»ù±¾Çé¿öMD5µÄÈ«³ÆÊÇMessage-Digest Algorithm 5£¬ÔÚ90Äê´ú³õÓÉMITµÄ¼ÆËã»ú¿ÆѧʵÑéÊÒºÍRSA Data Security Inc·¢Ã÷£¬¾MD2¡¢MD3ºÍMD4·¢Õ¹¶øÀ´¡£
Message-Digest·ºÖ¸×Ö½Ú´®(Message)µÄHas ......
×î½üÔÚÓÃÈóǬÔÚ×öһЩwebÏîÄ¿µÄ±¨±í£¬ÆäÖÐÓÐÒ»¸öÅúÁ¿´òÓ¡µÄ±¨±í¡£ÐèÒª°Ñ²ÎÊý´«µ½±¨±íÀµ±°ÑÖÐÎÄ´«µ½ÀïÃæʱ×ÜʱÂÒÂ룬²ÉÓÃÁ˸÷ÖÖתÂ뷽ʽ£¬Ò²Ã»×ª¹ýÀ´£¬ÔÎ.........
Ϊʲô»áÓÐÕâô¶àµÄ±àÂ룬ºÃÍ·ÌÛѽ... ......
ArcGIS Server9.3ÍêÕûÇåÎú°²×°Á÷³Ì
ÒÔϵÄArcGIS Server9.3°²×°Á÷³ÌÊÇÎÒ¸öÈË×ܽá³öÀ´µÄ£¬ÔÚwindowXP2Ñé֤ͨ¹ý£¬ÐèÒªµÄ»°£¬Ï£ÍûÓõÄ×Å¡£
Ò»¡¢ArcGIS Server²úÆ·°üÀ¨Á½¸ö²¿·Ö£º
1¡¢GIS Server£¬ËüÊÇÒ»¸öÌṩGIS·þÎñµÄ·þÎñÆ÷Èí¼þ²úÆ·£¬°üÀ¨Ò»ÏµÁкËÐÄAO¿âºÍÒ»¸ö¹ ......
ÎÄÕÂÓÃʵÀý´úÂëչʾÁËJavaÖжàÏ̷߳ÃÎʹ²Ïí×ÊÔ´
ʱÏß³Ìͬ²½
µÄÖØÒªÐÔ¡£
·Ö±ðͨ¹ýÔÚÁ½¸öÏß³ÌÖÐͬʱ·ÃÎÊ(µ÷ÓÃget_id*·½·¨)¾¹ýͬ²½´¦Àí(lock¼°Synchronized)µÄ¹²Ïí×ÊÔ´(tmp)¼°Î´¾¹ýͬ²½´¦ÀíµÄ¹²Ïí×ÊÔ´(tmp)À´ËµÃ÷ͬ²½´¦ÀíµÄµÄ×÷Óá£
mainÖзÖÁ½²¿·Ö:
1£©Ç°°ë²¿·Ö£¬non-synchronization²¿·ÖÓÃÀ´²âÊÔûÓÐ×öͬ²½´¦ÀíµÄ´úÂë ......
1Ê×ÏÈÌí¼ÓÐÞ¸ÄͼƬ¿í¶ÈºÍ¸ß¶ÈµÄ·½·¨
public static void reduceImg(String imgsrc, int widthdist, int heightdist) {
try {
File srcfile = new File(imgsrc);
if (!srcfile.exists()) {
return;
}
......