JavaÖи÷ÀàCache»úÖÆÊµÏÖ½â¾ö·½°¸
ÔÚJavaÖУ¬²»Í¬µÄÀà¶¼ÓÐ×Ô¼ºµ¥¶ÀµÄCache»úÖÆ£¬ÊµÏֵķ½·¨Ò²¿ÉÄÜÓÐËù²»Í¬£¬ÎÄÕÂÁоÙÁËJavaÖг£¼ûµÄ¸÷ÀàCache»úÖÆµÄʵÏÖ·½·¨£¬Í¬Ê±½øÐÐÁË×ۺϵıȽϡ£
OSCache
OSCacheÊǸöÒ»¸ö¹ã·º²ÉÓõĸßÐÔÄܵÄJava EE»º´æ¿ò¼Ü£¬OSCacheÄÜÓÃÓÚÈκÎJavaÓ¦ÓóÌÐòµÄÆÕͨµÄ»º´æ½â¾ö·½°¸¡£
OSCacheÓÐÒÔÏÂÌØµã£º»º´æÈκζÔÏó£¬Äã¿ÉÒÔ²»ÊÜÏÞÖÆµÄ»º´æ²¿·ÖjspÒ³Ãæ»òHTTPÇëÇó£¬ÈκÎjava¶ÔÏ󶼿ÉÒÔ»º´æ¡£ÓµÓÐÈ«ÃæµÄAPI--OSCache API¸øÄãÈ«ÃæµÄ³ÌÐòÀ´¿ØÖÆËùÓеÄOSCacheÌØÐÔ¡£
ÓÀ¾Ã»º´æ--»º´æÄÜËæÒâµÄдÈëÓ²ÅÌ£¬Òò´ËÔÊÐí°º¹óµÄ´´½¨(expensive-to-create)Êý¾ÝÀ´±£³Ö»º´æ£¬ÉõÖÁÄÜÈÃÓ¦ÓÃÖØÆô¡£Ö§³Ö¼¯Èº--¼¯Èº»º´æÊý¾ÝÄܱ»µ¥¸öµÄ½øÐвÎÊýÅäÖ㬲»ÐèÒªÐ޸ĴúÂë¡£»º´æ¼Ç¼µÄ¹ýÆÚ--Äã¿ÉÒÔÓÐ×î´óÏ޶ȵĿØÖÆ»º´æ¶ÔÏóµÄ¹ýÆÚ£¬°üÀ¨¿É²åÈëʽµÄˢвßÂÔ(Èç¹ûĬÈÏÐÔÄܲ»ÐèҪʱ)¡£
Java Caching System
JSC(Java Caching System)ÊÇÒ»¸öÓ÷ֲ¼Ê½µÄ»º´æÏµÍ³£¬ÊÇ»ùÓÚ·þÎñÆ÷µÄjavaÓ¦ÓóÌÐò¡£ËüÊÇͨ¹ýÌṩ¹ÜÀí¸÷ÖÖ¶¯Ì¬»º´æÊý¾ÝÀ´¼ÓËÙ¶¯Ì¬webÓ¦Óá£JCSºÍÆäËû»º´æÏµÍ³Ò»Ñù£¬Ò²ÊÇÒ»¸öÓÃÓÚ¸ßËÙ¶ÁÈ¡£¬µÍËÙдÈëµÄÓ¦ÓóÌÐò¡£¶¯Ì¬ÄÚÈݺͱ¨±íϵͳÄܹ»»ñµÃ¸üºÃµÄÐÔÄÜ¡£
Èç¹ûÒ»¸öÍøÕ¾£¬ÓÐÖØ¸´µÄÍøÕ¾½á¹¹£¬Ê¹ÓüäЪÐÔ¸üз½Ê½µÄÊý¾Ý¿â(¶ø²»ÊÇÁ¬Ðø²»¶ÏµÄ¸üÐÂÊý¾Ý¿â)£¬±»Öظ´ËÑË÷³öÏàͬ½á¹ûµÄ£¬¾ÍÄܹ»Í¨¹ýÖ´Ðлº´æ·½Ê½¸Ä½øÆäÐÔÄܺÍÉìËõÐÔ¡£
EHCache
EHCacheÊÇÒ»¸ö´¿JavaµÄÔÚ½ø³ÌÖеĻº´æ£¬Ëü¾ßÓÐÒÔÏÂÌØÐÔ£º¿ìËÙ£¬¼òµ¥£¬ÎªHibernate 2.1³äµ±¿É²åÈëµÄ»º´æ£¬×îСµÄÒÀÀµÐÔ£¬È«ÃæµÄÎĵµºÍ²âÊÔ¡£
JCache
JCacheÊǸö¿ªÔ´³ÌÐò£¬ÕýÔÚŬÁ¦³ÉΪJSR-107¿ªÔ´¹æ·¶£¬JSR-107¹æ·¶ÒѾºÜ¶àÄêû¸Ä±äÁË¡£Õâ¸ö°æ±¾ÈÔÈ»Êǹ¹½¨ÔÚ×î³õµÄ¹¦Äܶ¨ÒåÉÏ¡£
ShiftOne
ShiftOne Java Object CacheÊÇÒ»¸öÖ´ÐÐһϵÁÐÑϸñµÄ¶ÔÏ󻺴æ²ßÂÔµÄJava lib£¬¾ÍÏñÒ»¸öÇáÁ¿¼¶µÄÅäÖûº´æ¹¤×÷״̬µÄ¿ò¼Ü¡£
SwarmCache
SwarmCacheÊÇÒ»¸ö¼òµ¥ÇÒÓÐЧµÄ·Ö²¼Ê½»º´æ£¬ËüʹÓÃIP multicastÓëͬһ¸ö¾ÖÓòÍøµÄÆäËûÖ÷»ú½øÐÐͨѶ£¬ÊÇÌØ±ðΪ¼¯ÈººÍÊý¾ÝÇý¶¯webÓ¦ÓóÌÐò¶øÉè¼ÆµÄ¡£SwarmCacheÄܹ»ÈõäÐ͵ĶÁ²Ù×÷´ó´ó³¬¹ýд²Ù×÷µÄÕâÀàÓ¦ÓÃÌṩ¸üºÃµÄÐÔÄÜÖ§³Ö¡£ SwarmCacheʹÓÃJavaGroupsÀ´¹ÜÀí´ÓÊô¹ØÏµºÍ·Ö²¼Ê½»º´æµÄͨѶ¡£
TreeCache/JBossCache
JBossCacheÊÇÒ»¸ö¸´ÖƵÄÊÂÎñ´¦Àí»º´æ£¬ËüÔÊÐíÄ㻺´æÆóÒµ¼¶Ó¦ÓÃÊý¾ÝÀ´¸üºÃµÄ¸ÄÉÆÐÔÄÜ¡£»º´æÊý¾Ý±»×Ô¶¯¸´ÖÆ£¬ÈÃÄãÇáËɽøÐÐJBoss·þÎñÆ÷Ö®¼äµÄ¼¯Èº¹¤×÷¡£JBossCacheÄܹ»Í¨¹ýJBossÓ¦Ó÷þÎñ»òÆäËûJ2EEÈÝÆ÷À´ÔËÐÐÒ»¸öMBean·þÎñ£¬µ
Ïà¹ØÎĵµ£º
<!--
/* Font Definitions */
@font-face
{font-family:ËÎÌå;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"\@ËÎÌå" ......
<!--
/* Font Definitions */
@font-face
{font-family:ËÎÌå;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"\@ËÎÌå" ......
<!--
/* Font Definitions */
@font-face
{font-family:ËÎÌå;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"\@ËÎÌå" ......
import java.io.*;
class Fen{
String fileName;
int size;
Fen(String fileName,String size){
this.fileName = fileName;
this.size = Integer.parseInt(size)*1024;
}
public void cut()throws Exception{
int maxx = 0;
File inFile = new File(fileName);
int fileLength = (int)inFile.length(); //È¡µÃÎ ......
1. String¡¢StringBuffer¡¢StringBuilderµÄÇø±ð
String²»±ä¶ÔÏó£¬StringBuffer¿É±ä×Ö·û´®£¬·½·¨Îªsynchronized£¬StringBuilder¿É±ä×Ö·û´®£¬·½·¨·Çsynchronized
2. finally¡¢final¡¢finalizeµÄÇø±ð
finallyÔÚtry-cache-finallyÖÐʹÓã» ......