Contoh penggunaan modul cache
Contoh 1: Kendalikan data cache secara terus melalui modul cache
public static void main(String[] args) throws Exception { YMP.get().init(); try { // 操作默认缓存 Caches.get().put("key1", "value1"); System.out.println(Caches.get().get("key1")); // 操作指定名称的缓存 Caches.get().put("default", "key2", "value2"); System.out.println(Caches.get().get("default", "key2")); } finally { YMP.get().destroy(); } }
Nota: Apabila menyatakan nama cache, sila sahkan sama ada konfigurasi yang sepadan dengan nama itu sudah wujud.
hasil:
value1 value2
Contoh 2: Caching kaedah kelas berdasarkan anotasi
Anotasi @Cacheable digunakan di sini, yang digunakan untuk mengenal pasti sama ada hasil pelaksanaan kaedah dalam kelas perlu diambil perhatian bahawa:Pertama sekali, anotasi @Cacheable mestilah dalam Diisytiharkan pada kelas yang telah didaftarkan dengan pengurus objek kelas YMP, menunjukkan bahawa kelas itu menyokong caching Kedua, tambah anotasi @Cacheable pada kaedah yang diperlukan untuk men-cache hasil pelaksanaan; penjana: Kelas pelaksanaan antara muka penjana utama, lalai ialah DefaultKeyGenerator.class skop: skop cache, boleh Nilai yang dipilih adalah APLIKASI, SESI dan LALAI, lalainya adalah LALAI, tetapan bukan LALAI memerlukan kerjasama cache antara muka skop pemproses (ICacheScopeProcessor);Hasil pelaksanaan:
@Bean @Cacheable public class CacheDemo { @Cacheable public String sayHi(String name) { System.out.println("No Cached"); return "Hi, " + name; } public static void main(String[] args) throws Exception { YMP.get().init(); try { CacheDemo _demo = YMP.get().getBean(CacheDemo.class); System.out.println(_demo.sayHi("YMP")); System.out.println(_demo.sayHi("YMP")); // System.out.println("--------"); // System.out.println(_demo.sayHi("YMPer")); System.out.println(_demo.sayHi("YMP")); System.out.println(_demo.sayHi("YMPer")); } finally { YMP.get().destroy(); } } }Seperti yang dapat dilihat daripada output hasil di atas, aksara "Tiada Cached" akan dikeluarkan apabila parameter yang sama bagi kaedah sayHi dipanggil untuk rentetan kali pertama, menunjukkan bahawa ia berlaku tidak menggunakan cache, dan mengembalikan nilai terus daripada cache apabila dipanggil semula