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

JavaÖÐÈçºÎµ÷ÓÃVCµÄ¶¯Ì¬¿â

ÒÔǰһƪµÄDLLΪÀý²ûÊöJavaÈçºÎµ÷Óö¯Ì¬¿â
Ŀǰ´æÔÚÒ»¸öVC±àÒëµÄ·ÇMFC¶¯Ì¬¿âDLL£¨¾ßÌåÈçºÎÉú³É·ÇMFC¶¯Ì¬¿âDLL¼ûǰһƪÎÄÕ£©£¬Ãû³ÆÎªmydll.dll£¬ÆäÖÐÓе¼³öº¯Êýmyadd£ºÐÎÈ磺int myadd(int,int)£¬ÏÖjavaÓ¦ÓóÌÐòÐèÒªµ÷Óøö¯Ì¬¿âµÄmyaddº¯Êý¡£¾ßÌåʵÏÖ²½ÖèÈçÏ£º
1¡¢±àдµ÷ÓÃmydll.dllµÄjava³ÌÐò
£¨1£©³ÌÐòtestMyDll .javaÈçÏ£º
public class testMyDll {
 private native static int myadd(int a,int b);
 static {
  System.loadLibrary("javamydll");  //¸Ã¶¯Ì¬¿âÃû³ÆÎªÖм䶯̬¿â£¬ÓÉjava³ÌÐòʹÓ㬸ºÔðµ÷ÓÃÐèҪʹÓõĶ¯Ì¬¿â¡£
 }
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  System.out.println(myadd(4,5));
 }
}
£¨2£©±àÒëtestMyDll .java³ÌÐò£¬¼ì²éÊÇ·ñ´æÔÚ´íÎó¡£
  javac testMyDll .java
2¡¢Éú³ÉÍ·ÎļþtestMyDll.h£¬¹©Éú³ÉÖм䶯̬¿âʹÓá£
  javah testMyDll
3¡¢Éú³ÉÖм䶯̬¿âjavamydll.dll
£¨1£©Ê¹ÓÃvc¹¤¾ßÏÈÉú³Éwin32 Dynamic-Link Library¿Õ¹¤³Ì
£¨2£©½«ÉÏÃæÉú³ÉµÄÍ·ÎļþtestMyDll.hÌí¼Ó½øÈ¥£¬Í¬Ê±»¹ÐèÒªÌí¼ÓjdkÏÂincludeĿ¼ÖÐ µÄjni.h¡¢jni_md.hÕâÁ½¸öÍ·Îļþ£¬×îºÃ½«jni.hÎļþ·ÅÈ밲װĿ¼ÏÂincludeµÄĿ¼ÏÂ
£¨3£©Ìí¼Óµ÷ÓÃÐèҪʹÓõĶ¯Ì¬¿âµÄʵÏÖÎļþtestMyDll.cpp
³ÌÐòÈçÏ£º
//testMyDll.cpp
#include <windows.h>
#include "testMyDll.h"
typedef int (*padd)(int,int);
JNIEXPORT jint JNICALL Java_testMyDll_myadd
  (JNIEnv * a, jclass b, jint x, jint y)
{
 HINSTANCE hins = ::LoadLibrary("mydll.dll");
 if(hins == NULL)
 {
  return 0;
 }
 int res;
 padd pa = (padd)GetProcAddress(hins,"myadd");
 if(pa != NULL)
 {
  res = x+y;
 }
 ::FreeLibrary(hins);
 return res;
}
£¨4£©±àÒëÉú³ÉÖм䶯̬¿âjavamydll.dll
4¡¢½«Öм䶯̬¿âjavamydll.dllºÍÐèʹÓõĶ¯Ì¬¿âmydll.dll·ÅÔÚtestMyDll.classĿ¼Ï£¬ÔËÐиÃÀà:  java testMyDll
³ÌÐòÊä³ö½á¹û£º9
´ÓÉÏÊöʵÏÖ·½·¨ÖпÉÒÔ¿´µ½£¬javaÐèÒªµ÷ÓÃÒÑÓеĶ¯Ì¬¿â£¬»¹ÐèÒª×Ô¼ºÉú³ÉÒ»¸öÖм䶯̬¿â£¬¸ºÔðµ÷ÓÃת»»¡£ËùÒÔЧÂʾͻáÓеãµÍ¡£


Ïà¹ØÎĵµ£º

JAVA³õÂóÌ(Touch)0.1

     JavaµÄ×¢ÏúÓï¾äǰҪʹÓÃ×¢ÊÍ·û“//”¡£
     ÀàÉùÃ÷¹Ø¼ü×Öclass´´½¨ÁËÒ»¸ö×Ô¶¨ÒåÀࣻÀàµÄÃû×ÖΪWelcome2£¬ÎªJavaÉùÃ÷ÀàÓï¾ä£ºclass Welcome2 {}¡£
     ·½·¨¹Ø¼ü×ÖmainÉùÃ÷ÁËmain()·½·¨£¬Àý£ºPublic static void main(String args[]) { ......

JavaÖÐʹÓÃÐźÅÁ¿——Semaphore

 Ö÷Ïß³ÌÖУº
InitThread initThread=new InitThread(new Semaphore(0));//³õʼ»¯Ò»¸ö×ÓỊ̈߳¬´«Ò»¸ö³õֵΪ0µÄÐźÅÁ¿¸øËü
Display.getDefault().asyncExec(initThread);
try {//´Ë´¦»á¹ÒÆð£¬Ö±µ½×ÓÏß³ÌÍê³É¹¤×÷£¬ÐÞ¸ÄÁËÐźÅÁ¿µÄÖµ£¬Ö÷Ï̲߳Żá¼ÌÐø
initThread.getSemaphore().acquire();
} catch (Inte ......

±±¾© ÁõÓñÇ¿ Èí¼þ¹¤³Ìʦ ¼òÀú java php

±±¾© ÁõÓñÇ¿ Èí¼þ¹¤³Ìʦ ¼òÀú java php
ÇóÖ°¼òÀú
·  »ù±¾ÐÅÏ¢
ÐÕ    Ãû:
ÁõÓñÇ¿
³öÉúÈÕÆÚ:
1988Äê10ÔÂ23ÈÕ
 
ÐÔ    ±ð:
ÄÐ
Ãñ    ×å:
ºº×å
ר    Òµ£º
Èí¼þ¼¼Êõ
½¡¿µ×´¿ö:
½¡¿µ
E - Mail:
mengxiangbaidu@qq.com
ÁªÏµµç»° ......

´«ÖDz¥¿ÍjavaÅàѵ2010Äê4ÔÂ23ÈÕ(hibernate)ѧϰ

½ñÌìÌý¿Î²ÅÖªµÀ×Ô¼º×ÔѧµÄhibernate¿ÉÒÔËãµÃÉÏÊÇһ̣ºýÍ¿£¬ÒòΪ֮ǰ¿´HibernateµÄÊé¿´ÁË¿´¼¸±é¶¼Ã»Óи㶮£¬½ñÌìÌýÁËÒ»ÌìµÄ¿Î£¬ºÜ¶à¶«Î÷¾Í»íÈ»¿ªÀÊ£¬ËùÒÔԤϰҲÊǺÜÖØÒªµÄ£¬ÄÇÅÂÊÇûÓп´¶®£¬µ«ÖÁÉÙÒ²ÓÐÓ¡Ïó¡£ ½ñÌìÉϿεĽø³Ì±È½Ï¿ì£¬ÐìÅà³ÉÀÏʦ½²¿Î£¬ÎÒÖ»ÄÜÓá°Ç¿º·¡±Á½¸ö×ÖÀ´ÐÎÈÝ£¬ÉÏ¿Îʱ¾«Á¦³äÅæ£¬ÓïËٿ죨µ«ÌýµÃºÜÇåÎú£¬¼ ......

ÍøÉÏÕÒÁ˸öjavaËæ»úÉú³ÉÃÜÂëµÄ¡£¡£¡£·¢ÉÏÀ´¼Ç¼һÏ¡£

import java.util.Random;
public class test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(genRandomNum(10));
}
/**
* Éú³ÉËæ¼´ÃÜÂë
* @param pwd_len Éú³ÉµÄÃÜÂëµÄ×ܳ¤¶È
* @return ÃÜÂëµÄ×Ö·û´®
*/
p ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ