dz̸Java´úÀí»úÖÆ
¿ÉÒÔ˵´úÀíÊÇjavaÊ®·ÖÖØÒªµÄÒ»ÖÖ»úÖÆ£¬ÁíÒ»¸öµ±È»ÊÇÊôÓÚ·´ÉäÁË£¬jdkÖе¥¶À½²µ½ÁË·´ÉäAPI£¨java.lang.reflect£©£¬¿ÉÄÜÓÐÈËÈÏΪ·´Éä¶Ô×ÊÔ´ÏûºÄ±È½ÏÀ÷º¦£¬È·ÊµÒ²ÊÇ£¬·´Éä¿Ï¶¨ÊÇÒªÏûºÄ×ÊÔ´µÄ£¬µ«Ò²²»ÊÇʲô¶¼ÒªÓõ½·´É䣬ËùÒÔ×î¼ÑÊÔÑéÓ¦¸ÃÊÇÔÚ×ÊÔ´ÏûºÄ³Ì¶ÈºÍ·´ÉäµÄʹÓó̶ÈÖ®¼äÕÒµ½Ò»¸öƽºâµã£¬±¾ÎIJ¢²»´òËã½²·´É䣬¹ØÓÚ·´ÉäµÄÐĵÃÒÔºóÔÙÌù³öÀ´£¬×Ô¼º×î½üÒ²ÔÚÕÛÄ¥ÕÛÄ¥
´úÀí¿ÉÒÔ·ÖΪ£ºStaticProxy ºÍDynamicProxy
±ÈÈ磺
Package xyz£»
import java.util.logging.*
public class talkToSomebody{
private Logger logger=Logger.getLogger(this.getClass().getName());
public void talk(String name){
logger.log(Level.INFO,"talking start....");
System.out.println("Hi!ni hao,"+name);
logger.log(Level.INFO,"talking ends....");
}
}
ºÜÏÔʾ£¬ÄãÐèÒªtalkÆäËûÈË£¬Æäʵ¾ÍÖ»ÓÐÒ»¸ö¾ä»°ÊǹؼüµÄ£¬"Hi!ni hao XXX" ,Õâ²ÅÊÇÐèÒª¹ØÏµµÄ£¬»òÕ߽кËÐÄÒµÎñ£¨Õâ¸ö´Î¿ÉÄÜÓеãǣǿ£©£¬µ«Èç¹ûÒª¼Ç¼ÄãºÍÄÄЩÈ˽»Ì¸¹ý£¬ÄÄʱºò¿ªÊ¼µÄ£¬ÄÄʱºò½áÊøµÄ£¬ÈÕÖ¾¹¦ÄܾÍÊÇʵÏÖÕâ¸ö£¬ÕâÊôÓÚÒµÎñÂß¼£¬°ÑÒµÎñÂß¼ºÍºËÐÄÒµÎñ·Åµ½ÁËÒ»Æð£¬Èç¹ûÄÄÌì²»ÐèÒª¼Ç¼ÁË£¬Ôõô°ì?µÃÖØÐ¸ÄÔ´´úÂ룬ÉõÖÁÈç¹û¿Í»§Ö»Ìṩ¸øÄã±àÒë¹ýµÄclass»ò½Ó¿Ú£¬Äã»áºÜÓôÃÆµÄ£¡
½â¾ö·½·¨£º
ÓÃProxy»úÖÆ£¬Æäʵ´úÀí¾ÍÏñÒ»¸öÖнé»ú¹¹£¬ÎÒ×Ô¼ºÍ»È»ÓÐʲôÊ£¨»òÕß²»Ô¸Ò⣩£¬ÕÒÖнé»ú¹¹È¥×ö£¬µ±È»ÄãµÃ³öÇ®¸øÖнé»ú¹¹¡£
public class TalkToSomebody implements ITalk{
public void talk(String name){
System.out.println("Hi,ni hao,"+name);
}
}
²»´í£¬Öнé»ú¹¹Êǰ´ÕÕÎÒµÄÒªÇóʵÏֵ쬽á¹ûû´í£¡
public class StaticProxyTalk Implements ITalk{
private Logger logger=Logger.getLogger(this.getClass().getName());
private ITalk somebody;
public StaticProxyTalk(ITalk somebody){
this.somebody=somebody;
}
public void talk(String name){
log("talking start....");
somebody.talk(name);
log("talking ending...");
}
private void log(String message){
logger.log(Level.INFO,message)
}
¸Ð¾õºÃ¶àÁË£¬ÒÔºóÎÒ²»ÐèÒªÖнé·þÎñÁË£¬²»È¥ÕÒËû¾ÍÐУ¬ÏÖÔÚ¿´ÏÂÕâ¸öÖнé»ú¹¹×öµÃÔõôÑù£¬´ïµ½ÎÒµÄÒªÇóÁËû£¿
public class TestProxy{
public static void main(String
Ïà¹ØÎĵµ£º
ÎÒ½ñÌìѧϰÁËOracle Êý¾Ý¿âµÄÅäÖü°¹ÜÀí£º
1 Oracle Êý¾Ý¿âÌåϵ½á¹¹¼ò½é
1.1 ƽ³£Ëù˵µÄ Oracle »ò Oracle Êý¾Ý¿âÖ¸µÄÊÇ Oracle Êý¾Ý¿â¹ÜÀíϵͳ. Oracle Êý¾Ý¿â¹ÜÀíϵͳÊǹÜÀíÊý¾Ý¿â·ÃÎʵļÆËã»úÈí¼ ......
1¡¢¿ØÖÆ"×Ý´ò"¡¢ ºá´ò”ºÍ“Ò³ÃæµÄ±ß¾à¡£
£¨1£©<script defer>
function SetPrintSettings() {
¡¡// -- advanced &n ......
±¨±íµÄÉúÃüÖÜÆÚºÍjavaÀàµÄ·Ç³£ÏàËÆ£¬java±»Ò»Ð©Ô´Îļþ×é³É£¬ÕâЩԴÎļþ±»±àÒë³ÉÀ©Õ¹ÃûΪclassµÄÎļþ¡£Í¬ÑùµÄÒ»¸ö±¨±íÒ²ÊÇiyouÒ»¸öÔ´´úÂëµÄÎʼÛÄêÀ´ÃèÊöµÄ£¬Ô´ÎļþµÄÀ©Õ¹ÃûΪ . jrxml £¬È»ºó±»±àÒë³É .jasperÎļþ.
JasperReport ÊÇÒ»¸öjar¿â£¬ËûÌṩÒÔÏÂÖ÷ÒªÀࣺ
net.sf.jasperreports.engine.JasperCompileMan ......