javaµ¥Ì¬Ä£Ê½½²½â
µ¥Ì¬¶¨Òå:
SingletonģʽÖ÷Òª×÷ÓÃÊDZ£Ö¤ÔÚJavaÓ¦ÓóÌÐòÖУ¬Ò»¸öÀàClassÖ»ÓÐÒ»¸öʵÀý´æÔÚ¡£
Singletonģʽ¾ÍΪÎÒÃÇÌṩÁËÕâÑùʵÏֵĿÉÄÜ¡£Ê¹ÓÃSingletonµÄºÃ´¦»¹ÔÚÓÚ¿ÉÒÔ½ÚÊ¡Äڴ棬ÒòΪËüÏÞÖÆÁËʵÀýµÄ¸öÊý£¬ÓÐÀûÓÚJavaÀ¬»ø»ØÊÕ£¨garbage collection£©¡£
ʹÓÃSingleton×¢ÒâÊÂÏ
ÓÐʱÔÚijЩÇé¿öÏ£¬Ê¹ÓÃSingleton²¢²»ÄÜ´ïµ½SingletonµÄÄ¿µÄ£¬ÈçÓжà¸öSingleton¶ÔÏóͬʱ±»²»Í¬µÄÀà×°ÈëÆ÷×°ÔØ£»ÔÚEJBÕâÑùµÄ·Ö²¼Ê½ÏµÍ³ÖÐʹÓÃҲҪעÒâÕâÖÖÇé¿ö£¬ÒòΪEJBÊÇ¿ç·þÎñÆ÷£¬¿çJVMµÄ
µ¥Ì¬Ä£Ê½µÄÑÝ»¯£º
µ¥Ì¬Ä£Ê½ÊǸö¼òµ¥µÄģʽ£¬µ«ÊÇÕâ¸ö¼òµ¥µÄģʽҲÓкܶิÔӵĶ«Î÷¡£
£¨×¢Ò⣺ÔÚÕâÀï²¹³äһϣ¬ÏÖÔÚµ¥Ì¬Ä£Ê½ÆäʵÓÐÒ»¸öд·¨ÊDz»´íµÄ¼ûÕâÀhttp://www.blogjava.net/dreamstone/archive/2007/02/27/101000.html£¬µ«»¹Êǽ¨Òé¿´ÍêÕâƪÎÄÕ£¬ÒòΪ½âÊ͵ÄÊÂÇéÊDz»Ò»ÑùµÄ£¬ÕâÀï˵µÄÊÇΪʲôdouble-checked²»ÄÜʹÓÃ.£©
Ò»£¬Ê×ÏÈ×î¼òµ¥µÄµ¥Ì¬Ä£Ê½£¬µ¥Ì¬Ä£Ê½1
java ´úÂë
import java.util.*;
class Singleton
{
private static Singleton instance;
private Vector v;
private boolean inUse;
private Singleton()
{
v = new Vector();
v.addElement(new Object());
inUse = true;
}
public static Singleton getInstance()
{
if (instance == null) //1
instance = new Singleton(); //2
return instance; //3
}
}
java
Ïà¹ØÎĵµ£º
¡¡1¡¢»ù±¾¸ÅÄî¼°ÔÀí
¡¡¡¡ÎÒÃÇÖªµÀ£¬¶ÔÓÚ¹²Ïí×ÊÔ´£¬ÓÐÒ»¸öºÜÖøÃûµÄÉè¼Æģʽ£º×ÊÔ´³Ø(Resource Pool)¡£¸ÃģʽÕýÊÇΪÁ˽â¾ö×ÊÔ´µÄƵ·±·ÖÅä?ÊÍ·ÅËùÔì³ÉµÄÎÊÌ⡣Ϊ½â¾öÉÏÊöÎÊÌ⣬¿ÉÒÔ²ÉÓÃÊý¾Ý¿âÁ¬½Ó³Ø¼¼Êõ¡£Êý¾Ý¿âÁ¬½Ó³ØµÄ»ù±¾Ë¼Ïë¾ÍÊÇΪÊý¾Ý¿âÁ¬½Ó½¨Á¢Ò»¸ö“»º³å³Ø”¡£Ô¤ÏÈÔÚ»º³å³ØÖзÅÈëÒ»¶¨ÊýÁ¿µÄÁ¬½Ó£¬µ±Ð ......
·ºÐÍÉùÃ÷¾ÍÊÇ·º·ºµÄÉùÃ÷ÀàÐÍ¡£ÎÒÃÇÓÃÆäËüµÄÓïÑÔ×öÒ»¸ö±È½Ï£º
JavascriptÉùÃ÷±äÁ¿£º var i= 1;var c = ‘char ’
VB ÉùÃ÷±äÁ¿£º dim i=1;dim c=’char’
Perl ÉùÃ÷±äÁ¿£º $i = 1; $c = ‘char’
ÕâЩ½Å±¾ÓïÑÔ£¬ÔÚÉùÃ÷±äÁ¿µÄʱºò£¬¸ù±¾¾Í²»ÏëjavaÄÇÑù»¹µÃÉùÃ÷ÀàÐÍ¡£ËûÃǵÄÀàÐÍÒÑ¾× ......
OpenJWeb(1.8) Java WebÓ¦ÓÿìËÙ¿ª·¢Æ½Ì¨µÄ×÷ÕßÊÇÎÒÃǼ¼ÊõÁªÃ˵ijÉÔ±£¬Ëû×î½üÍƳöÁËа汾µÄ¿ìËÙÓ¦Óÿª·¢Æ½Ì¨ OpenJWeb(1.8)£¬ÎÒ°ïËû×ö×öÐû´«
OpenJWeb¿ìËÙ¿ª·¢Æ½Ì¨ÒÔ¿ìËÙ¿ª·¢ÎªºËÐÄ£¬ÕûºÏÏȽøµÄjava
¿ªÔ´¿ò¼Ü£¬±¾×Å×ÔÖ÷¿ª·¢+Ó¦Óü¯³ÉÏà½áºÏµÄÔÔò£¬Ö¼ÔÚΪÕþ¸®¡¢ÆóÊÂÒµµ¥Î»¡¢Èí¼þ¹«Ë¾µÈƽ̨Óû§Ìṩһ ......
1.java¹ýÂËÆ÷¶ÔextÒì²½ÇëÇóÌøת
Óû§·ÃÎʳ¬Ê±
½â¾öÁ½ÖÖÇé¿öϵÄÓû§·ÃÎʳ¬Ê±¡£
a£©ÆÕͨhttpÇëÇóµÄsession³¬Ê±¡£
b£©Òì²½httpÇëÇóµÄsession³¬Ê±£¬Ê¹ÓÃextºó´ó²¿·ÖµÄ½çÃæˢж¼ÊÇÒì²½µÄajaxÇëÇó¡£
²»¹ÜÊÇÄÇÖÖÀàÐ͵ÄhttpÇëÇó×ÜÊÇ¿ÉÒÔÓÉÒ»¸ö¹ýÂËÆ÷À´²¶×½¡£
·ÖÀࣺÆÕͨhttpÇëÇóµÄheader²ÎÊýÖÐûÓÐx-requested-with: ......
1.1 ²»ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀý
¡¡¡¡
¡¡¡¡ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀýʱ£¬¹¹Ô캯ÊýÁ´ÖеÄËùÓй¹Ô캯Êý¶¼»á±»×Ô¶¯µ÷Óᣵ«Èç¹ûÒ»¸ö¶ÔÏóʵÏÖÁËCloneable½Ó¿Ú£¬ÎÒÃÇ¿ÉÒÔµ÷ÓÃËüµÄclone()·½·¨¡£clone()·½·¨²»»áµ÷ÓÃÈκÎÀ๹Ô캯Êý¡£
¡¡¡¡
¡¡¡¡ÔÚʹÓÃÉè¼Æģʽ£¨Design Pattern£©µÄ³¡ºÏ£¬Èç¹ûÓÃFactoryģʽ´´½¨¶ÔÏó£¬Ôò¸ÄÓÃclone( ......