javaÉè¼ÆÄ£Ê½Ñ§Ï°1££Singleton Pattern
javaÉè¼ÆÄ£Ê½Ñ§Ï°1££Singleton Pattern
¡¡¡¡Ç°Ð©Ìì°ÚŪjava£¬²Î¿¼Ò»Ð©×ÊÁÏдÁ˸öÊý¾Ý¿âÁ¬½Ó³Ø£¬¶ÔÀïÃæÖ»²úÉúÒ»¸öʵÀýµÄÄÇÖÖ×ö·¨Éî±íÅå·þ£¬½ñÌìÖÐÎçÓÖÌýµ½±ðÈËÔÚ˵Éè¼ÆÄ£Ê½£¬Êܲ»ÁËÁË£¬¾ÍÉÏÍøDownÁ˵ã×ÊÁÏÀ´¡£
¡¡¡¡Ò»À´¾Í¿´µ½ÁËSingletonģʽ£¬Ò»¿´£¬Ñ½£¬²»¾ÍÊÇÄǸöÁ¬½Ó³ØÀïÓõķ½·¨Ã´?!àÞ£¬ÔÀ´Èç´Ë¡£
¡¡¡¡Singleton ÊÇÒ»ÖÖ´´½¨ÐÔÄ£ÐÍ£¬ËüÓÃÀ´È·±£Ö»²úÉúÒ»¸öʵÀý£¬²¢Ìṩһ¸ö·ÃÎÊËüµÄÈ«¾Ö·ÃÎʵ㡣
¡¡¡¡ÎªÁËʵÏÖ Singleton ģʽ£¬ÎÒÃÇÐèÒªÒ»¸ö¾²Ì¬µÄ±äÁ¿£¬Äܹ»ÔÚ²»´´½¨¶ÔÏóµÄÇé¿öϼÇÒäÊÇ·ñÒѾ²úÉú¹ýʵÀýÁË¡£¾²Ì¬±äÁ¿»ò¾²Ì¬·½·¨¶¼¿ÉÒÔÔÚ²»²úÉú¾ßÌåʵÀýµÄÇé¿öÏÂÖ±½Óµ÷Óã¬ÕâÑùµÄ±äÁ¿»ò·½·¨²»»áÒòΪÀàµÄʵÀý»¯¶øÓÐËù¸Ä±ä¡£
¡¡¡¡ÊµÏÖ Singleton ģʽµÄ°ì·¨Í¨³£ÓÐÈýÖÖ£º
¡¡¡¡1.Óþ²Ì¬·½·¨ÊµÏÖ Singleton£»
¡¡¡¡2.ÒÔ¾²Ì¬±äÁ¿Îª±ê־ʵÏÖ Singleton£»
¡¡¡¡3.ÓÃ×¢²áÆ÷»úÖÆÀ´´´½¨ Singleton¡£
¡¡¡¡¶ÔÓÚÉÏÃæ3ÖÖ·½·¨£¬ÎÒ¾õµÃµÚÒ»ÖֺܺÃÓã¬Ð´µÄÁ¬½Ó³ØÓÃÁ˵ÚÒ»Öֺ͵ÚÈýÖÖ·½·¨¡£ÓõÚÒ»ÖÖ·½·¨Ê¹µÃÔõôȡ¶¼ÊÇÄÇÒ»¸öÁ¬½Ó³Ø£¬ÓõÚÈýÖÖ·½·¨Ê¹µÃÖ»´æÔÚÄÇÒ»¸öÁ¬½Ó³Ø¡£
¡¡¡¡µÚÒ»ÖÖ·½·¨¾ßÌåʵÏÖΪ£º
¡¡¡¡ÉùÃ÷¹¹Ô캯ÊýΪ private£¬·Àֹͨ¹ý³ýÓÉÎÒÃÇÌṩµÄ·½·¨Ö®ÍâµÄÈÎÒⷽʽÀ´´´½¨Ò»¸öʵÀý£¬Èç¹û²»°Ñ¹¹Ô캯ÊýÉùÃ÷Ϊprivate£¬±àÒëÆ÷¾Í»á×Ô×÷´ÏÃ÷µÄ×Ô¶¯Í¬²½Ò»¸öĬÈϵÄfriendly¹¹ÔìÆ÷¡£ÏÂÃæÊÇÕª³µÄÒ»¸öÀý×Ó£º
¡¡¡¡public class Singleton
¡¡¡¡{
¡¡¡¡private static Singleton s;
¡¡¡¡private Singleton()
¡¡¡¡{
¡¡¡¡};
¡¡¡¡
¡¡¡¡public static Singleton getInstance()
¡¡¡¡{
¡¡¡¡if (s == null)
¡¡¡¡s = new Singleton();
¡¡¡¡return s;
¡¡¡¡}
¡¡¡¡}
¡¡¡¡// ²âÊÔÀà
¡¡¡¡class singletonTest
¡¡¡¡{
¡¡¡¡public static void main(String[] args)
¡¡¡¡{
¡¡¡¡Singleton s1 = Singleton.getInstance();
¡¡¡¡Singleton s2 = Singleton.getInstance();
¡¡¡¡if (s1==s2)
¡¡¡¡System.out.println
¡¡¡¡("s1 is the same instance with s2");
¡¡¡¡else
¡¡¡¡System.out.println
¡¡¡¡("s1 is not the same instance with s2");
¡¡¡¡}
¡¡¡¡}
¡¡¡¡
¡¡¡¡singletonTestÔËÐнá¹ûÊÇ:
¡¡¡¡
¡¡¡¡s1 is the same instance with s2
¡¡¡¡
¡¡¡¡ÕâÖ¤Ã÷ÎÒÃÇÖ»´´½¨ÁËÒ»¸öʵÀý£¬ÔÙÔõôȡ¶¼ÊÇÄǸöʵÀý£¬ºÜ¼òµ¥Ò²ºÜʵÓá£
¡¡¡¡¶ÔÓÚµÚ¶þÖÖʵÏÖ·½·¨£¬ÔÚÀàÖмÓÈëÒ»¸ö¾²Ì¬±äÁ¿×öΪ±êÖ¾£¬Ã¿´Î¶¼ÔÚ¹¹Ô캯ÊýÀï½øÐмì²ì¡£
¡¡¡¡ÏÂÃæÊÇÎÒдµÄÒ»¸öÀý×Ó£º
¡¡¡¡public c
Ïà¹ØÎĵµ£º
ij֪ÃûÃÅ»§ÍøÕ¾µÄÒ»µÀ±ÊÊÔÌâ
public class Test {
public static void stringUpd(String str) {
str = str.replace("j", "l");
System.out.println(str);
}
public static void stringBufferUpd(StringBuffer bf) {
bf.append("c");
System.out.println(bf);
}
......
// µ¼Èë£É£Ï¿âÀà
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
// µ¼Èë¡¡£Ð£Ï£É¿âÀà
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi ......
¡¡Javaƽ̨ÓÉJavaÐéÄâ»ú£¨Java Virtual Machine£©ºÍJava Ó¦Óñà³Ì½Ó¿Ú£¨Application Programming Interface¡¢¼ò³ÆAPI£©¹¹³É¡£Java Ó¦Óñà³Ì½Ó¿ÚΪJavaÓ¦ÓÃÌṩÁËÒ»¸ö¶ÀÁ¢ÓÚ²Ù×÷ϵͳµÄ±ê×¼½Ó¿Ú£¬¿É·ÖΪ»ù±¾²¿·ÖºÍÀ©Õ¹²¿·Ö¡£ÔÚÓ²¼þ»ò²Ù×÷ϵͳƽ̨Éϰ²×°Ò»¸öJavaƽ̨֮ºó£¬JavaÓ¦ÓóÌÐò¾Í¿ÉÔËÐС£ÏÖÔÚJavaƽ̨ÒѾǶÈëÁ˼¸ºõËù ......
ÔÚJSPÀ»ñÈ¡¿Í»§¶ËµÄIPµØÖ·µÄ·½·¨ÊÇ£ºrequest.getRemoteAddr£¨£©£¬ÕâÖÖ·½·¨Ôڴ󲿷ÖÇé¿ö϶¼ÊÇÓÐЧµÄ¡£µ«ÊÇÔÚͨ¹ýÁËApache£¬SquidµÈ·´Ïò´úÀíÈí¼þ¾Í²»ÄÜ»ñÈ¡µ½¿Í»§¶ËµÄÕæÊµIPµØÖ·ÁË¡£
¡¡¡¡
Tag£ºJava ¿Í»§¶Ë ÕæÊµIPµØÖ·
ÔÚJSPÀ»ñÈ¡¿Í»§¶ËµÄIPµØÖ·µÄ·½·¨ÊÇ£ºrequest.getRemoteAddr£¨£©£¬ÕâÖÖ·½·¨Ôڴ󲿷ÖÇé¿ ......
javaÑéÖ¤ÂëµÄʵÏÖ(Ò»)
ÊÕ²Ø
1.ImageServletÀàµÄʵÏÖ£º
package com.mobile.control;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOExcep ......