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

java ASM

Java ASM
ÎÒÃÇÖªµÀJavaÊǾ²Ì¬ÓïÑÔ£¬¶øpython¡¢rubyÊǶ¯Ì¬ÓïÑÔ£¬Java³ÌÐòÒ»µ©Ð´ºÃºÜÄÑÔÚÔËÐÐʱ¸ü¸ÄÀàµÄÐÐΪ£¬¶øpython¡¢ruby¿ÉÒÔ¡£
²»¹ý»ùÓÚbytecode²ãÃæÉÏÎÒÃÇ¿ÉÒÔ×öһЩÊֽţ¬À´Ê¹Java³ÌÐò¶àһЩÁé»îÐÔºÍMagic£¬ASM¾ÍÊÇÕâÑùÒ»¸öÓ¦Óù㷺µÄ¿ªÔ´¿â¡£
ASM is a Java bytecode manipulation framework. It can be used to dynamically generate stub classes or other proxy classes,
directly in binary form, or to dynamically modify classes at load time, i.e., just before they are loaded into the Java
Virtual Machine.
ASMÍê³ÉÁËBCELºÍSERPͬÑùµÄ¹¦ÄÜ£¬µ«ASM
Ö»ÓÐ30¶àk£¬¶øºóÁ½Õß·Ö±ðÊÇ350kºÍ150k¡£apacheÕæÊÇÔ½À´Ô½¹ýÆøÁË¡£
ÈÃÎÒÃÇÀ´¿´Ò»¸öASMµÄ¼òµ¥Àý×ÓHelloworld.java£¬ËüÉú³ÉÒ»¸öExampleÀàºÍÒ»¸ömain·½·¨£¬main·½·¨´òÓ¡"Hello world!"Óï¾ä:
Java´úÂë
import java.io.FileOutputStream;   
import java.io.PrintStream;   
  
import org.objectweb.asm.ClassWriter;   
import org.objectweb.asm.MethodVisitor;   
import org.objectweb.asm.Opcodes;   
import org.objectweb.asm.Type;   
import org.objectweb.asm.commons.GeneratorAdapter;   
import org.objectweb.asm.commons.Method;   
  
public class Helloworld extends ClassLoader implements Opcodes {   
  
  public static void main(final String args[]) throws Exception {   
  
    // creates a ClassWriter for the Example public class,   
    // which inherits from Object   
  
     ClassWriter cw = new ClassWriter(0);   
     cw.visit(V1_1, ACC_PUBLIC, "Example", null, "java/lang/Object", null);   
     MethodVisitor mw = cw.visitMethod(ACC_PUBLIC, "<init>", "()V", null,   
        null);   
     mw.visitVarInsn(ALOAD, 0);   
 


Ïà¹ØÎĵµ£º

Java¶Ñ.Õ»ºÍ³£Á¿³Ø ±Ê¼Ç

½ñÌ츴ϰÁËÒ»ÏÂÕâЩ֪ʶ£¬Ë³±ã×öÁËϱʼÇ.
1.¼Ä´æÆ÷£º×î¿ìµÄ´æ´¢Çø, ÓɱàÒëÆ÷¸ù¾ÝÐèÇó½øÐзÖÅä,ÎÒÃÇÔÚ³ÌÐòÖÐÎÞ·¨¿ØÖÆ.
2. Õ»£º´æ·Å»ù±¾ÀàÐ͵ıäÁ¿Êý¾ÝºÍ¶ÔÏóµÄÒýÓ㬵«¶ÔÏó±¾Éí²»´æ·ÅÔÚÕ»ÖУ¬¶øÊÇ´æ·ÅÔÚ¶Ñ£¨new ³öÀ´µÄ¶ÔÏ󣩻òÕß³£Á¿³ØÖУ¨×Ö·û´®³£Á¿¶ÔÏó´æ·ÅÔÚ³£Á¿³ØÖС££©
3. ¶Ñ£º´æ·ÅËùÓÐnew³öÀ´µÄ¶ÔÏó¡£
4. ¾²Ì¬Óò£ ......

̸̸"Java¼Ü¹¹"

1. J2EEÊǹ淶£¬ÊÇÒ»ÖÖJSR±ê×¼£¬ÓÐÏêϸÎĵµ£¬²ûÊöJ2EEÌṩÄÄЩ¹¦ÄÜ£¬¿ÉÒÔÏÂÔØÕâÑùÎĵµ£¬µ±È»»¹ÓÐһЩ´úÂë½Ó¿Ú£¬ÕâÊǵäÐÍJavaÊÀ½çÖеĿò¼Ü´úÂë+±ê×¼ÎĵµÐÎʽ£¬ÕâÊÇÖ»ÓÐ×ÔÓÉÊÀ½ç²ÅÓеĹ淶£¬ÔÚ΢ÈíMSÊÀ½çÄãÊǾø¶Ô²»»á¿´µ½µÄ£¬ËùÒÔ£¬´Ó΢Èíת¹ýÀ´µÄ£¬»áÔΣ¬»á²»ÊÊÓ¦£¬²»ÄÜÔÙ°´ÕÕËûÃÇÒÔǰµÄ¾­ÑéÀ´¿´´ý×ÔÓɵÄÐÂÊÀ½ç¡£
2.¼Ü¹¹ÊǾ ......

java Ïß³Ì×é


Ïß³Ì×é
ÔÚJavaÖÐÿһ¸öÏ̶߳¼¹éÊôÓÚij¸öÏß³Ì×é¹ÜÀíµÄÒ»Ô±£¬ÀýÈçÔÚÖ÷º¯Êýmain()Ö÷¹¤×÷Á÷³ÌÖвúÉúÒ»¸öỊ̈߳¬Ôò²úÉúµÄÏß³ÌÊôÓÚmainÕâ¸öÏß³Ì×é¹ÜÀíµÄÒ»Ô±¡£¼òµ¥µØËµ£¬Ïß³Ì×é¾ÍÊÇÓÉÏß³Ì×é³ÉµÄ¹ÜÀíÏ̵߳ÄÀ࣬Õâ¸öÀàÊÇjava.lang.ThreadGroupÀà¡£
¿ÉÒÔͨ¹ýʹÓÃÈçÏ´úÂë»ñÈ¡´ËÏß³ÌËùÊôÏß³Ì×éµÄÃû³Æ¡£
Thread.currentThread().ge ......

javaÓëmysqlÂÒÂëµÄÎÊÌâ [ת]

½â¾ö·½·¨Ò»:(×îÖØÒªµÄÒ»ÖÖ·½·¨)
Äã¿´ÏÂmy.ini£¬ÓÐÎÞ
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
È»ºó½¨Á¢±íʱ£¬Ò²ÒªÓ㨱ÈÈ磩
DROP   TABLE   IF   EXISTS   `Company`;
CREATE &nb ......

java·ºÐÍT.classµÄ»ñÈ¡

   ºÜÔç֮ǰд¹ýÀûÓ÷ºÐͺͷ´Éä»úÖÆ³éÏóDAO £¬¶ÔÆäÖлñÈ¡×ÓÀà·ºÐ͵ÄclassÒ»Ö±²»ÊǺÜÀí½â¡£¹Ø¼üµÄµØ·½ÊÇHibernateBaseDaoµÄ¹¹Ôì·½·¨ÖеÄ
Type genType = getClass().getGenericSuperclass();
Type[] params = ((ParameterizedType) genType).getActualTypeArguments();
entityClass = (Class)params[0] ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ