Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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¡¢StringÊÇ×î»ù±¾µÄÊý¾ÝÀàÐÍÂð?
»ù±¾Êý¾ÝÀàÐͰüÀ¨byte¡¢int¡¢char¡¢long¡¢float¡¢double¡¢booleanºÍshort¡£
java.lang.StringÀàÊÇfinalÀàÐ͵ģ¬Òò´Ë²»¿ÉÒԼ̳ÐÕâ¸öÀà¡¢²»ÄÜÐÞ¸ÄÕâ¸öÀࡣΪÁËÌá¸ßЧÂʽÚÊ¡¿Õ¼ä£¬ÎÒÃÇÓ¦¸ÃÓÃStringBufferÀà
2¡¢int ºÍ Integer ÓÐÊ²Ã´Çø±ð
Java ÌṩÁ½ÖÖ²»Í¬µÄÀàÐÍ£ºÒýÓÃÀàÐͺÍԭʼÀàÐÍ£¨ ......

JAVA¿ª·¢Õß×ȥµÄ20¸öÓ¢ÎÄÍøÕ¾

1.[http://www.javaalmanac.com] – Java¿ª·¢ÕßÄê¼øÒ»ÊéµÄÔÚÏß°æ±¾. ÒªÏë¿ìËٲ鵽ijÖÖJava¼¼ÇɵÄÓ÷¨¼°Ê¾Àý´úÂë, ÕâÊÇÒ»¸ö²»´íµÄÈ¥´¦.
2.[http://www.onjava.com] – O’ReillyµÄJavaÍøÕ¾. ÿÖܶ¼ÓÐÐÂÎÄÕÂ.
3.[http://java.sun.com] – ¹Ù·½µÄJava¿ª·¢ÕßÍøÕ¾ – ÿÖܶ¼ÓÐÐÂÎÄÕ·¢±í.
4.[http:/ ......

java Ïß³Ì×é


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

¹ØÓÚ¼àÌýÆ÷£¨Java£©

 
×é¼þ
¹¦ÄÜ
Com.guipei.listener. SessionListener
¼àÌý×é¼þ£¬Íê³ÉHttpSessionContextµÄ¹¦ÄÜ
index.jsp
ʵÏÖÓû§µÇ½£¬´´½¨ÐµÄsession
logout.jsp
ʵÏÖÓû§Í˳ö£¬Óû§×Ô¶¯É¾³ýsession
display.jsp
ÏÔʾÓû§µÇ½ÐÅÏ¢£¬ÔÚÓû§µÇ½ºó×Ô¶¯×ªÈë
session.jsp
Áгöµ±Ç°ËùÓеÄsession
kill.jsp
ɱµôÖ¸¶¨µÄ»á»° ......

Java CGLIB

Java Cglib
1.CGLIB°üµÄ½éÉÜ
     ´úÀíΪ¿ØÖÆÒª·ÃÎʵÄÄ¿±ê¶ÔÏóÌṩÁËÒ»ÖÖ;¾¶¡£µ±·ÃÎʶÔÏóʱ£¬ËüÒýÈëÁËÒ»¸ö¼ä½ÓµÄ²ã¡£JDK×Ô´Ó1.3°æ±¾¿ªÊ¼£¬¾ÍÒýÈëÁ˶¯Ì¬´úÀí£¬²¢ÇÒ¾­³£±»ÓÃÀ´¶¯Ì¬µØ´´½¨´úÀí¡£JDKµÄ¶¯Ì¬´úÀíÓÃÆðÀ´·Ç³£¼òµ¥£¬µ±ËüÓÐÒ»¸öÏÞÖÆ£¬¾ÍÊÇʹÓö¯Ì¬´úÀíµÄ¶ÔÏó±ØÐëʵÏÖÒ»¸ö»ò¶à¸ö½Ó¿Ú¡£Èç¹ûÏë´úÀ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ