# ace-cache
基于spring boot上的注解缓存,自带轻量级缓存管理页面。<br>
@Cache比spring cache更轻量的缓存,支持单个缓存设置过期时间,可以根据前缀移除缓存。<br>
采用fastjson序列化与反序列化,以json串存于缓存之中。<br>
ace-cache可以快速用于日常的spring boot应用之中。<br>
# 使用手册
## Maven依赖
```
<dependency>
<groupId>com.github.wxiaoqi</groupId>
<artifactId>ace-cache</artifactId>
<version>1.0.0</version>
</dependency>
```
## 缓存配置
1、配置redis数据源,application.yml文件
```
# 1.0.0版本推荐使用spring redis配置
spring:
redis:
database: 0
host: localhost
timeout: 2000
sysName: ace #默认key前缀
enable: true #是否启用ace-cache
userkey: #用户会话的标志,存放于cookie或request header
lettuce:
pool:
max-active: 300
min-idle: 100
max-wait: 1000
# 不建议使用配置,此配置在0.0.2以下版本使用
redis:
pool:
maxActive: 300
maxIdle: 100
maxWait: 1000
host: 127.0.0.1
port: 6379
password:
timeout: 2000
# 服务或应用名
sysName: ace
enable: true
database: 0
```
## 缓存开启
2、开启AOP扫描
```
@EnableAceCache
```
## 缓存使用
3、在Service上进行@Cache注解或@CacheClear注解
# 注解说明
## 配置缓存:@Cache
注解参数 | 类型 | 说明
------------- |------------- | -----
key | 字符串 | 缓存表达式,动态运算出key
expires | 整形 | 缓存时长,单位:分钟
desc | 描述 | 缓存说明
scope | 枚举 | 缓存作用范围,会话级还是应用级
parser | Class<? extends ICacheResultParser> | 缓存返回结果自定义处理类
generator | Class<? extends IKeyGenerator> | 缓存键值自定义生成类
result | Class[] | 缓存返回结果自定义类型,默认取第一位
## 清除缓存:@CacheClear
注解参数 | 类型 | 说明
------------- |------------- | -----
pre |字符串 | 清除某些前缀key缓存
key | 字符串 | 清除某个key缓存
keys | 字符串数组 | 清除某些前缀key缓存
generator | Class<? extends IKeyGenerator> | 缓存键值自定义生成类
## 全局分布式锁:@CacheGlobalLock
注解参数 | 类型 | 说明
------------- |------------- | -----
key | 字符串 | 分布式做key表达式
retry | 整形 | 重试加锁间隔时间,单位ms
waitLock | 布尔型 | 是否一直等待全局锁? 默认为否,获取不到锁则不执行程序。
generator | Class<? extends IKeyGenerator> | 缓存键值自定义生成类
## 默认key动态表达式说明
表达式举例 | 说明 | 举例
------------- |------------- | -----
@Cache(key="user:{1}")<br>public User getUserByAccount(String account) | {1}表示获取第一个参数值<br>{2}表示获取第二个参数值<br>……依此类推 | 若:account = ace,则:key = user:ace
@CacheClear(pre="user{1.account}")<br>User saveOrUpdate(User user)|{1}表示获取第一个参数值<br>{1.xx}表示获取第一个参数中的xxx属性|若:account=ace,则:key = user:ace
# 轻量管理端
访问地址:http://localhost:8080/cache
<br>管理端批量或前缀清除ace-cache注册的缓存,同时也可以快速预览缓存的数据内容,也可以对缓存的失效时间进行延长。
![输入图片说明](https://images.gitee.com/uploads/images/2020/0913/122505_93749824_547642.png "[email protected]")
# Demo
1、在src/main/test中展开的相关示例代码
>CacheTest是核心启动类
>>service包是缓存调用例子,包含自定义表达式和结果解析、注解的使用
# 2017年5月22日
初次与大家见面,请多多指教!
# 2017年5月23日 兼容spring mvc模式
## 配置文文件
##### application.properties
```
redis.pool.maxActive = 300
redis.pool.maxIdle = 100
redis.pool.maxWait = 1000
redis.host = 127.0.0.1
redis.port = 6379
redis.password =
redis.timeout = 2000
redis.database = 0
redis.sysName = ace
redis.enable = true
```
##### applicationContext.xml
```
<!-- beans 头部-->
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd"
<!-- 开启AOP配置 -->
<aop:aspectj-autoproxy></aop:aspectj-autoproxy>
<context:component-scan base-package="com.ace.cache"/>
<context:annotation-config/>
```
##### maven依赖
```
<properties>
<!-- spring -->
<spring.version>4.1.3.RELEASE</spring.version>
<properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
```
## 使用方式
使用方式与spring boot的方式一样,在方法上直接注解即可。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
时间序列分析 一个时间序列通常由4种要素组成:趋势、季节变动、循环波动和不规则波动。 趋势:是时间序列在长时期内呈现出来的持续向上或持续向下的变动。 季节变动:是时间序列在一年内重复出现的周期性波动。它是诸如气候条件、生产条件、节假日或人们的风俗习惯等各种因素影响的结果。 循环波动:是时间序列呈现出得非固定长度的周期性变动。循环波动的周期可能会持续一段时间,但与趋势不同,它不是朝着单一方向的持续变动,而是涨落相同的交替波动。 不规则波动:是时间序列中除去趋势、季节变动和周期波动之后的随机波动。不规则波动通常总是夹杂在时间序列中,致使时间序列产生一种波浪形或震荡式的变动。只含有随机波动的序列也称为平稳序列。 时间序列建模基本步骤是:①用观测、调查、统计、抽样等方法取得被观测系统时间序列动态数据。②根据动态数据作相关图,进行相关分析,求自相关函数。相关图能显示出变化的趋势和周期,并能发现跳点和拐点。跳点是指与其他数据不一致的观测值。如果跳点是正确的观测值,在建模时应考虑进去,如果是反常现象,则应把跳点调整到期望值。拐点则是指时间序列从上升趋势突然变为下降趋势的点。
资源推荐
资源详情
资源评论
收起资源包目录
基于spring boot上的注解缓存,自带轻量级缓存管理页面.zip (61个子文件)
ace-cache-master
.classpath 1KB
pom.xml 6KB
.gitattributes 87B
src
test
resources
application.yml 537B
java
com
ace
cache
test
unit
UserServiceTest.java 2KB
cache
MyKeyGenerator.java 583B
service
UserService.java 487B
impl
UserServiceImpl.java 4KB
entity
User.java 1KB
CacheTest.java 440B
main
resources
META-INF
static
js
cache.js 4KB
jquery.jsonview.min.js 6KB
bootstrap-treeview.min.js 21KB
bootstrap-3.1.0.js 60KB
jquery-2.1.1.min.js 82KB
css
bootstrap-3.1.0.css 126KB
bootstrap-treeview.min.css 260B
jquery.jsonview.min.css 1KB
index.html 4KB
java
com
ace
cache
annotation
CacheClear.java 1KB
Cache.java 2KB
CacheGlobalLock.java 1KB
aspect
CacheGlobalLockAspect.java 2KB
CacheClearAspect.java 5KB
ResultParseService.java 2KB
KeyGenerateService.java 3KB
CacheAspect.java 2KB
api
impl
CacheRedis.java 6KB
CacheAPI.java 2KB
controller
CacheController.java 597B
utils
CacheUtil.java 3KB
ReflectionUtils.java 13KB
TreeUtils.java 907B
PropertiesLoaderUtils.java 4KB
WebUtil.java 844B
rest
CacheRest.java 2KB
service
ICacheManager.java 665B
IRedisService.java 19KB
impl
RedisServiceImpl.java 30KB
RedisLock.java 2KB
BootRedisServiceImpl.java 8KB
CacheManagerImpl.java 4KB
AutoConfiguration.java 6KB
parser
IUserKeyGenerator.java 235B
ICacheResultParser.java 434B
IKeyGenerator.java 1KB
impl
DefaultKeyGenerator.java 3KB
DefaultResultParser.java 1KB
entity
CacheBean.java 1KB
EnableAceCache.java 312B
constants
CacheScope.java 83B
CacheConstants.java 174B
vo
CacheTree.java 2KB
config
RedisPoolConfig.java 658B
WebConfig.java 600B
RedisConfig.java 3KB
CacheWebConfig.java 561B
LICENSE 11KB
.gitignore 28B
README.md 6KB
Jenkinsfile 379B
共 61 条
- 1
资源评论
野生的狒狒
- 粉丝: 2504
- 资源: 2146
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功