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

JavaϵĿò¼Ü±à³Ì(5)

 



   ·´Éä¡¢ProxyºÍÔªÊý¾ÝÊÇJava×îÇ¿µÄÈý¸öÌØÕ÷£¬ÔÙ¼ÓÉÏCGLib (Code Generation Library)
ºÍASM£¬Ê¹µÃJavaËäȻûÓÐRuby£¬Python°ãºóÉú¿É磬һÑùÄÜ×ö³öÇ¿º·µÄ¿ò¼Ü¡£
   Proxy
¿ÉÒÔ¿´×÷ÊÇ΢Ð͵ÄAOP£¬Ã÷°×ÌṩÁËÔڼ̳кÍίÍÐÖ®ÍâµÄµÚÈý¸ö´úÂë·âװ;¾¶£¬Ö»ÒªÓÐ×ã¹»µÄÏëÏóÁ¦£¬¿ÉÒÔ×öµÃ·Ç³£ºÃÍ棬SpringµÄÔ´ÂëÀïÓÃProxy¾Í
ÓõúÜËæ±ã£¬¿´µÃÎҷdz£Ñۺ졣¿ÉϧProxy±ØÐë»ùÓÚ½Ó¿Ú¡£Òò´ËSpringµÄ×ö·¨£¬»ùÓÚ½Ó¿ÚµÄÓÃproxy,·ñÔò¾ÍÓÃcglib¡£AOPô£¬Ò»°ãСÊ·Ç
compoentÒ»¼¶µÄ¾Í²»Âé·³AspectJ³öÊÖÁË¡£
    cglibµÄEnhancer˵ÆðÀ´ÉñÆ棬ÓÃÆðÀ´Ò»Ò³Ö½²»µ½¾Í½²ÍêÁË¡£
    ËüµÄÔ­Àí¾ÍÊÇÓÃEnhancerÉú³ÉÒ»¸öÔ­ÓÐÀàµÄ×ÓÀ࣬²¢ÇÒÉèÖúÃcallbackµ½proxy£¬ ÔòÔ­ÓÐÀàµÄÿ¸ö·½·¨µ÷Óö¼»áתΪµ÷ÓÃʵÏÖÁËMethodInterceptor½Ó¿ÚµÄproxyµÄintercept() º¯Êý£º
public
 Object intercept(Object o,Method method,Object[] args,MethodProxy proxy)
 ÔÚ
intercept()º¯ÊýÀÄã¿ÉÒÔÔÚÖ´ÐÐObject
result=proxy.invokeSuper(o,args);À´Ö´ÐÐÔ­Óк¯Êý£¬ÔÚÖ´ÐÐÇ°ºó¼ÓÈë×Ô¼ºµÄ¶«Î÷£¬¸Ä±äËüµÄ²ÎÊýÖµ£¬Ò²¿ÉÒÔÂ÷Ìì¹ýº££¬ÍêÈ«
¸É±ðµÄ¡£Ëµ°×ÁË£¬¾ÍÊÇAOPÖеÄaround advice¡£
    AOPûÓгöÏÖÒÔÇ°£¬¸ÃÁìÓò¾­µäµÄÉè¼ÆģʽÊÇDecorator£¬ÏñJava IO StreamµÄÉè¼Æ¾ÍÊÇÈç´Ë.²»¹ý£¬Èç¹ûΪÿ¸öDAO, ÿ¸ö·½·¨µÄдDecoratorº¯Êý»áдËÀÈ˵ģ¬ËùÒÔÓÃÉÏcglibµÄºÃ´¦ÊÇÒ»´Î¹ýÀ¹½ØËùÓз½·¨¡£ 
     ÁíÍ⣬cglib³ýÁËEnhancerÖ®Í⣬»¹ÓÐBulkBeanºÍTransform£¬¶¼ÊÇHibernate³Ö¾Ã»¯µÄ»ù´¡£¬µ«ÎĵµÆ¶·¦£¬Ò»Ê±»¹Ã»È¥¿´ÔõôÓá£
1.AOPÀï½²ÁËÒ»°Ù±é°¢Ò»°Ù±éµÄlog aspectÔÚcglibÊÇÕâÑù×öµÄ:
   
public
 
class
 LogDAOProxy 
implements
 MethodInterceptor
   {
       
private
 Logger log
=
Logger.getLogger(LogDAOProxy.
class
);
       
private
 Enhancer enhancer
=
new
 Enhancer();
        
//
·µ»ØDAOµÄ×ÓÀà
       
public
 Object getDAO(Class&nb


Ïà¹ØÎĵµ£º

Javaѧϰ·Ïß


ÏÈѧϰj2se
Ҫѧϰj2ee¾ÍÒªÏÈѧϰj2se£¬¸Õ¿ªÊ¼Ñ§Ï°j2seÏȽ¨Ò鲻ҪʹÓÃIDE£¬È»ºó½¥½¥µÄ¹ý¶Éµ½Ê¹ÓÃIDE¿ª·¢£¬±Ï¾¹ÓÃËü·½±ãÂѧϰj2seÍƼöÁ½±¾Ê飬¡¶java2ºËÐļ¼ÊõÒ»¶þ¾í¡·£¬¡¶java±à³Ì˼Ïë¡·£¬¡¶javaģʽ¡·¡£ÆäÖС¶java±à³Ì˼Ïë¡·ÒªÑжÁ£¬¾«¶Á¡£ÕâÒ»¶Îʱ¼äÊÇ»ù±¾¹¦Ñ§Ï°£¬Ê±¼ä»áºÜ³¤£¬Ò²¿ÉẠ̈ܺܶ¬ÕâÒª¿´Ñ§Ï°Õß×ÔÉíˮƽ¶ø ......

JavaͨÓÃÑéÖ¤Âë³ÌÐò¼°Ó¦ÓÃʾÀý£¨ÌṩԴÂëÎĵµÏÂÔØ£©

°Ñ֮ǰÏîÄ¿ÖÐдµÄÒ»¸öJavaͨÓÃÑéÖ¤Âë³ÌÐòÕûÀíÁËһϣ¬Óë´ó¼Ò·ÖÏí£¬Ï£ÍûÄÜÅ×שÒýÓñ¡£
Ò»¡¢Ö÷Òª¹¦ÄÜ£º
1¡¢Ö§³Ö´¿Êý×Ö¡¢´óд×Öĸ¡¢Ð¡Ð´×Öĸ£¬¼°Á½Á½»ìºÏ»òÈýÕß»ìºÏÀàÐÍÑéÖ¤Â룻
2¡¢Ö§³Ö×Ô¶¨ÒåÌØÊâ×Ö·ûÅųý£¨Èç0oOi1jI£©£»
3¡¢Ö§³ÖͼƬ¼°ÎÄ×ÖÁ½ÖÖÀàÐÍÑéÖ¤Â룻
4¡¢Ö§³Ö×Ô¶¨ÒåÑéÖ¤ÂëͼƬ´óС£»
5¡¢Ö§³Ö×Ô¶¨Òå¸ÉÈÅÏßÌõÊý£»
......

Java Mail·¢ËÍ´øÓÐͼƬµÄhtml¸ñʽµÄÓʼþ

 Java Mail·¢ËÍ´øÓÐͼƬµÄhtml¸ñʽµÄÓʼþ£¬Õë¶ÔÓÚÏÔʾͼƬ£¬Ò»°ãÓÐÁ½ÖÖ·½·¨¡£
1. ͼƬ´æÔÚÓÚ·þÎñÆ÷ÉÏ£¬ÎÒÃÇÖ»ÐèÒª°ÑͼƬÔÚ·þÎñÆ÷µÄµÄÁ´½Ó·Å½øÈ¥¼´¿É¡£
ÕâÖÖ·¢Ê½±È½Ï¼òµ¥£¬µ«ÊÇÕâÖÖ·½·¨ÓÐЩȱÏÝ£º
ͼƬ²»Ö§³ÖÀëÏßä¯ÀÀ£»
ÿ´Îä¯ÀÀÓʼþÐèÒª·ÃÎÊweb·þÎñ£¬Ôö¼Ó·þÎñÆ÷¸ºµ££»
ÈôͼƬÒÔ¶þ½øÖƵķ½Ê½´æÔÚÓÚÊý¾Ý¿â»òÊǶ¯Ì¬É ......

quartzÒ»·ÖÖÓ½Ì³Ì javaÈÎÎñµ÷¶È

 quartzÊǸÉɶµÄ£¿ ÈÎÎñµ÷¶ÈÓõÄ
ÈÎÎñµ÷¶ÈÊǸÉɶµÄ£¿¾ÍÊÇÔÚÔ¤¶¨µÄʱ¼ä×öÔ¤¶¨µÄÊÂ
1.ÔÚquartÍøÕ¾ÏÂ×îеÄJAR°ü
2.½¨¸öÏîÄ¿£¬°ÑquartzµÄJAR°ü¼ÓÈëµ½ÏîÄ¿
3.н¨Ò»¸öÈÎÎñ
public class MyJob implements org.quartz.Job {
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionExceptio ......

JavaÖ®¸¸£ºÎªJava·¢Õ¹¾ªÆæ ºÍ½Å±¾ÓïÑÔ×ߵøü½ü

Ê®ÄêÇ°£¬Sun΢ϵͳ¹«Ë¾½«Java°áµ½ÁËÊÀÈËÃæÇ°£¬ÕâÊÇÊ×´ÎЭÖúÆóÒµ½¨Á¢¾ßÓÐÇ°Õ°ÐÔµÄ˼ÏëµÄÒ»¿îÈí¼þ£¬ËæºóJavaѸÃÍÀ©É¢£¬ÉîÈëµ½¼ÆËã»úÒµµÄ¼¸ºõÿ¸ö½ÇÂä¡£ÕâÏî¼¼ÊõµÄÄ»ºóÓ¢ÐÛ£¬¾ÍÊDZ¾ÎIJɷõÄJames Gosling¡£
ÉϸöÊÀ¼Í90Äê´ú³õ£¬Gosling·¢Æð²¢Áìµ¼ÁËÒ»¸öÃûΪGreenµÄÏîÄ¿£¬´ËÏîÄ¿×îÖÕÑݱäΪJava¡£Java µÄ»ù±¾ÀíÄîÊÇ´´ÔìÒ»ÖÖ¿ÉÒÔ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ