java´úÀíģʽ
´úÀíģʽµÄ×÷ÓÃÊÇ£ºÎªÆäËû¶ÔÏóÌṩһÖÖ´úÀíÒÔ¿ØÖƶÔÕâ¸ö¶ÔÏóµÄ·ÃÎÊ¡£
ÔÚijЩÇé¿öÏ£¬Ò»¸ö¿Í»§²»Ïë»òÕß²»ÄÜÖ±½ÓÒýÓÃÁíÒ»¸ö¶ÔÏ󣬶ø´úÀí¶ÔÏó¿ÉÒÔÔÚ¿Í»§¶ËºÍÄ¿±ê¶ÔÏóÖ®¼äÆðµ½ÖнéµÄ×÷ÓÃ
ÀýÈ磺¿ÍÈËÏëÇëÊг¤(ÕæÊǽÇÉ«)³Ô·¹ µ«ÊÇÇë²»¶¯Êг¤ Ö»ºÃÕÒÊг¤ÃØÊé(´úÀí½ÇÉ«) µ«ÊÇ×îºóΪ¿ÍÈË×öÊ嵀 »¹ÊÇÊг¤
´úÀíģʽһ°ãÉæ¼°µ½µÄ½ÇÉ«ÓÐ
³éÏó½ÇÉ«£ºÉùÃ÷ÕæÊµ¶ÔÏóºÍ´úÀí¶ÔÏóµÄ¹²Í¬½Ó¿Ú
´úÀí½ÇÉ«£º´úÀí¶ÔÏó½ÇÉ«ÄÚ²¿º¬ÓжÔÕæÊµ¶ÔÏóµÄÒýÓ㬴Ӷø¿ÉÒÔ²Ù×÷ÕæÊµ¶ÔÏó£¬Í¬Ê±´úÀí¶ÔÏóÌṩÓëÕæÊµ¶ÔÏóÏàͬµÄ½Ó¿ÚÒÔ±ãÔÚÈκÎʱ¿Ì
¶¼ÄÜ´úÌæÕæÊµ¶ÔÏó¡£Í¬Ê±£¬´úÀí¶ÔÏó¿ÉÒÔÔÚÖ´ÐÐÕæÊµ¶ÔÏó²Ù×÷ʱ£¬¸½¼ÓÆäËûµÄ²Ù×÷£¬Ï൱ÓÚ¶ÔÕæÊµ¶ÔÏó½øÐзâ×°
ÕæÊµ½ÇÉ«£º´úÀí½ÇÉ«Ëù´ú±íµÄÕæÊµ¶ÔÏó£¬ÊÇÎÒÃÇ×îÖÕÒªÒýÓõĶÔÏó
²Î¼û³ÌÐòSubject.java
²Î¼û³ÌÐòRealSubject.java
²Î¼û³ÌÐòProxySubject.java
²Î¼û³ÌÐòClient.java
// ³éÏó½ÇÉ«
abstract public class Subject
{
abstract public void request();
}
//ÕæÊµ½ÇÉ«£ºÊµÏÖÁËSubjectµÄrequest()·½·¨
public class RealSubject extends Subject
{
public RealSubject()
{
}
public void request()
{
System.out.println("from real subject.");
}
}
//´úÀí½ÇÉ«
public class ProxySubject extends Subject
{
private RealSubject realSubject; // ÒÔÕæÊµ½ÇÉ«×÷Ϊ´úÀí½ÇÉ«µÄÊôÐÔ
public ProxySubject()
{
}
public void request() // ¸Ã·½·¨·â×°ÁËÕæÊµ¶ÔÏóµÄrequest·½·¨
{
preRequest();
if (realSubject == null)
{
realSubject = new RealSubject();
}
realSubject.request(); // ´Ë´¦Ö´ÐÐÕæÊµ¶ÔÏóµÄrequest·½·¨
postRequest();
}
private void preRequest()
{
// something you want to do before requesting
}
private void postRequest()
{
// something you want to do after requesting
}
}
//¿Í»§¶Ëµ÷ÓÃ
public class Client
{
public static void main(String[] args)
{
//ÕâÀïÓõ½Á˶à̬»úÖÆ ÒòΪProxySubject¼Ì³ÐÁËSubject ËùÒÔ
Sub
Ïà¹ØÎĵµ£º
°²×°»·¾³£º
1.ÉÏ´«jdk-6u17-linux-i586.binºÍapache-tomcat-6.0.20.tar.gzµ½/usr
2.°²×°JDK
¡¡¡¡$chmod a+x jdk-6u17-linux-i586.bin
¡¡¡¡$ ./jdk-6u17-linux-i586.bin
¡¡¡¡$ vi /etc/profile
¡¡¡¡#Ìí¼ÓÈçÏÂ
¡¡¡¡export JAVA_HOME=/usr/jdk1.6.0_17
¡¡¡¡export PATH=$JAVA_HOME/bin:$PATH
¡¡¡¡$echo $JAVA_H ......
1£®ÈçºÎѧϰ³ÌÐòÉè¼Æ£¿
JAVAÊÇÒ»ÖÖÆ½Ì¨£¬Ò²ÊÇÒ»ÖÖ³ÌÐòÉè¼ÆÓïÑÔ£¬ÈçºÎѧºÃ³ÌÐòÉè¼Æ²»½ö½öÊÊÓÃÓÚJAVA£¬¶ÔC++µÈÆäËû³ÌÐòÉè¼ÆÓïÑÔÒ²Ò»Ñù¹ÜÓá£Óбà³Ì¸ßÊÖÈÏΪ£¬ JAVAÒ²ºÃCÒ²ºÃûʲô·Ö±ð£¬ÄÃÀ´¾ÍÓá£ÎªÊ²Ã´ËûÃÇÄÜ´ïµ½Èç´Ë¾³½ç£¿ÎÒÏëÊÇÒòΪ±à³ÌÓïÑÔÖ®¼äÓй²Í¨Ö®´¦£¬Áì»áÁ˱à³ÌµÄ¾«Ë裬×ÔÈ»Äܹ»×öµ½Ò»Í¨°Ùͨ¡£ÈçºÎѧϰ³ÌÐòÉè¼ÆÀ ......
Èç¹ûÄãÈ¥ÃæÊÔµÄʱºò£¬ÃæÊÔ¹Ù¿¼Ä㣬ΪʲôҪÔÚjavaÖеÄmain·½·¨Ç°¼Ópublic static voidÕâЩÐÞÊηû£¬ÄãÖªµÀÈçºÎÈ¥»Ø´ðÂð£¿ÏÂÃæÎÒΪ´ó¼Ò½²½âһϰɣ¡Èç¹ûÓÐʲôȱ©µÄ»°£¡»¶Ó´ó¼ÒµÄÖ¸µã£¡
Ê×ÏÈ£¬ÎªÊ²Ã´ÒªÓÃpublic£º
ÒòΪÔÚÔËÐгÌÐòʱ£¬jvmÒªµ÷ÓÃmain·½·¨£¬µ«ÎÒÃǶ¼Ó¦¸ÃÖªµÀjvm ......
¶¯Ì¬ÄÚ´æ·ÖÅä
´´½¨ºÍά»¤¶¯Ì¬Êý¾Ý½á¹¹ÒªÇó½øÐж¯Ì¬ÄÚ´æ·ÖÅ䣬¼´³ÌÐòÄܹ»ÔÚÖ´ÐÐʱ»ñµÃ¸ü¶àµÄÄÚ´æ¿Õ¼äÀ´·Åнáµã£¬²¢ÔÚ²»ÐèÒªÕâЩÄÚ´æÊ±ÊÍ·ÅËûÃÇ¡£
Êý¾ÝÁбí¿ÉÒÔÓÃÊý¾Ý½øÐд洢£¬µ«ÊÇÓÃÁ´±í´æ´¢Óм¸¸öºÃ´¦¡£ÔÚÊý¾Ý½á¹¹Òª±íʾµÄÊý¾ÝÔªËØµÄÊýÄ¿ÎÞ·¨Ô¤ÏÈÈ·¶¨µÄÇé¿öÏ£¬Á´±íÄܹ»Ìṩ¸üºÏÀíµÄ¿Õ¼ä·ÖÅä¡£Á´±íÊǶ¯Ì¬µÄ£¬ËùÒÔÆä³¤¶È ......