<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. Java 中常用緩存Cache機制的實現

    時間:2025-11-11 19:03:39 java語言

    Java 中常用緩存Cache機制的實現

      所謂緩存,就是將程序或系統經常要調用的對象存在內存中,一遍其使用時可以快速調用,不必再去創建新的重復的實例。這樣做可以減少系統開銷,提高系統效率。

      Java 中常用緩存Cache機制的實現

      緩存主要可分為二大類:

      一、通過文件緩存,顧名思義文件緩存是指把數據存儲在磁盤上,不管你是以XML格式,序列化文件DAT格式還是其它文件格式;

      二、內存緩存,也就是實現一個類中靜態Map,對這個Map進行常規的增刪查.

      代碼如下 :

      1. packagelhm.hcy.guge.frameset.cache;

      2.

      3. importjava.util.*;

      4.

      5. /pic/p>

      6.

      7. /pic/p>

      8.

      9. publicclassCacheManager{

      10. privatestaticHashMapcacheMap=newHashMap();

      11.

      12. /pic/p>

      13. privateCacheManager(){

      14. super();

      15. }

      16. /pic/p>

      17. publicstaticbooleangetSimpleFlag(Stringkey){

      18. try{

      19. return(Boolean)cacheMap.get(key);

      20. }catch(NullPointerExceptione){

      21. returnfalse;

      22. }

      23. }

      24. publicstaticlonggetServerStartdt(Stringkey){

      25. try{

      26. return(Long)cacheMap.get(key);

      27. }catch(Exceptionex){

      28. return0;

      29. }

      30. }

      31. /pic/p>

      32. publicsynchronizedstaticbooleansetSimpleFlag(Stringkey,booleanflag){

      33. if(flag&&getSimpleFlag(key)){/pic/p>

      34. returnfalse;

      35. }else{

      36. cacheMap.put(key,flag);

      37. returntrue;

      38. }

      39. }

      40. publicsynchronizedstaticbooleansetSimpleFlag(Stringkey,longserverbegrundt){

      41. if(cacheMap.get(key)==null){

      42. cacheMap.put(key,serverbegrundt);

      43. returntrue;

      44. }else{

      45. returnfalse;

      46. }

      47. }

      48.

      49.

      50. /pic/p>

      51. privatesynchronizedstaticCachegetCache(Stringkey){

      52. return(Cache)cacheMap.get(key);

      53. }

      54.

      55. /pic/p>

      56. privatesynchronizedstaticbooleanhasCache(Stringkey){

      57. returncacheMap.containsKey(key);

      58. }

      59.

      60. /pic/p>

      61. publicsynchronizedstaticvoidclearAll(){

      62. cacheMap.clear();

      63. }

      64.

      65. /pic/p>

      66. publicsynchronizedstaticvoidclearAll(Stringtype){

      67. Iteratori=cacheMap.entrySet().iterator();

      68. Stringkey;

      69. ArrayListarr=newArrayList();

      70. try{

      71. while(i.hasNext()){

      72. java.util.Map.Entryentry=(java.util.Map.Entry)i.next();

      73. key=(String)entry.getKey();

      74. if(key.startsWith(type)){/pic/p>

      75. arr.add(key);

      76. }

      77. }

      78. for(intk=0;k<arr.size();k++){

      79. clearOnly(arr.get(k));

      80. }

      81. }catch(Exceptionex){

      82. ex.printStackTrace();

      83. }

      84. }

      85.

      86. /pic/p>

      87. publicsynchronizedstaticvoidclearOnly(Stringkey){

      88. cacheMap.remove(key);

      89. }

      90.

      91. /pic/p>

      92. publicsynchronizedstaticvoidputCache(Stringkey,Cacheobj){

      93. cacheMap.put(key,obj);

      94. }

      95.

      96. /pic/p>

      97. publicstaticCachegetCacheInfo(Stringkey){

      98.

      99. if(hasCache(key)){

      100. Cachecache=getCache(key);

    【Java 中常用緩存Cache機制的實現】相關文章:

    java的緩存機制03-06

    java的緩存機制簡介12-17

    Java如何實現一個簡單的緩存09-24

    java中反射機制07-19

    php頁面緩存實現方法12-13

    講解Java的Spring框架中的AOP實現08-31

    Java中如何實現顯示動態的時間03-14

    Java反射機制02-10

    CPU中Cache是什么07-31

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人