开放代码社区 › AutoLoadCache 缓存自动加载框架

AutoLoadCache 缓存自动加载框架

开发工具Java

基于 AOP 与注解的 Java 缓存框架,通过自动加载机制让数据常驻内存。支持 Redis、Memcache、EhCache 等多种缓存方案,提供分布式锁、表达式、缓存删除与 Magic 模式,并与 Spring Boot 集成,适用于业务与缓存解耦、需要灵活切换缓存实现的场景。

AI/机器学习Web后端前端工具数据库
作者:用户6868语言:Java更新:2026-10-27
仓库地址
https://gitee.com/qiujiayu/AutoLoadCache.git

前往原仓库

README

# AutoLoadCache
---------------------------------------------
[![Build Status](http://img.shields.io/travis/qiujiayu/AutoLoadCache.svg?style=flat&branch=master)](https://travis-ci.org/qiujiayu/AutoLoadCache)
[![Maven Central](https://img.shields.io/maven-central/v/com.github.qiujiayu/autoload-cache-parent.svg?style=flat-square)](https://maven-badges.herokuapp.com/maven-central/com.github.qiujiayu/autoload-cache-parent/)
![GitHub license](https://img.shields.io/github/license/qiujiayu/AutoLoadCache.svg?style=flat-square)


现在使用的缓存技术很多,比如*Redis*、 *Memcache* 、 *EhCache*等,甚至还有使用*ConcurrentHashMap* 或 *HashTable* 来实现缓存。但在缓存的使用上,每个人都有自己的实现方式,大部分是直接与业务代码绑定,随着业务的变化,要更换缓存方案时,非常麻烦。接下来我们就使用**AOP + Annotation** 来解决这个问题,同时使用**自动加载机制** 来实现数据“**常驻内存**”。


### [设计思想及原理](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/idea.md)

在infoq 发表的文章[《面对缓存,有哪些问题需要思考?》](http://www.infoq.com/cn/articles/thinking-about-distributed-cache-redis)

[《再谈缓存的穿透、数据一致性和最终一致性问题》](https://mp.weixin.qq.com/s?__biz=MzIwMzg1ODcwMw==&mid=2247487343&idx=1&sn=6a5f60341a820465387b0ffcf48ae85b)

### [使用方法](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/use.md)

### [注解(Annotation)说明](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/annotations.md)

### [分布式锁支持](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/lock.md)

### [表达式的应用](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/script.md)

### [缓存删除](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/deleteCache.md)

### [Magic模式](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/magic.md)

### [注意事项](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/warning.md)

### [与Spring Cache的区别](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/SpringCache.md)

### [最佳实战](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/suggest.md)

### [autoload-cache-spring-boot-starter](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/autoload-cache-spring-boot-starter) 推荐使用这个,[test目录](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/autoload-cache-spring-boot-starter/tree/master/src/test)中也有可运行例子。


### 源码阅读

已经实现基于aspectj 的AOP,代码在[com.jarvis.cache.aop.aspectj.AspectjAopInterceptor](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/autoload-cache-aop/autoload-cache-aop-aspectj/src/main/java/com/jarvis/cache/aop/aspectj/AspectjAopInterceptor.java)。想通过阅读代码了解详细细节,可以以此为入口。

### [更新日志](https://gitee.com/qiujiayu/AutoLoadCache/blob/master/doc/changesLog.md)



QQ群:429274886