当前位置: 首页 > 软件库 > 程序开发 > 缓存系统 >

ace-cache

基于 Spring Boot 的注解缓存
授权协议 Apache
开发语言 Java
所属分类 程序开发、 缓存系统
软件类型 开源软件
地区 国产
投 递 者 艾泰
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

ace-cache

基于spring boot上的注解缓存,自带轻量级缓存管理页面。 @Cache比spring cache更轻量的缓存,采用fastjon序列化与反序列化,以json串存于缓存之中。 ace-cache可以快速用于日常的spring boot应用或服务之中,快速查看到缓存的状态。

使用手册

缓存配置

1、配置redis数据源,application.yml文件

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扫描

@ComponentScan({"com.ace.cache"})
@EnableAspectJAutoProxy

缓存使用

3、在Service上进行@Cache注解或@CacheClear注解

注解说明

配置缓存:@Cache

注解参数 类型 说明
key 字符串 缓存表达式,动态运算出key
expires 整形 缓存时长,单位:分钟
desc 描述 缓存说明
parser Class<? extends ICacheResultParser> 缓存返回结果自定义处理类
generator Class<? extends IKeyGenerator> 缓存键值自定义生成类

清除缓存:@CacheClear

注解参数 类型 说明
pre 字符串 清除某些前缀key缓存
key 字符串 清除某个key缓存
keys 字符串数组 清除某些前缀key缓存
generator Class<? extends IKeyGenerator> 缓存键值自定义生成类

默认key动态表达式说明

表达式举例 说明 举例
@Cache(key="user:{1}")
public User getUserByAccount(String account)
{1}表示获取第一个参数值
{2}表示获取第二个参数值
&hellip;&hellip;依此类推
若:account = ace,则:key = user:ace
@CacheClear(pre="user{1.account}")
User saveOrUpdate(User user)
{1}表示获取第一个参数值
{1.xx}表示获取第一个参数中的xxx属性
若:account=ace,则:key = user:ace

轻量管理端

访问地址:http://localhost:8080/cache 
管理端批量或前缀清除ace-cache注册的缓存,同时也可以快速预览缓存的数据内容,也可以对缓存的失效时间进行延长。 img

Demo

1、在src/main/test中展开的相关示例代码

CacheTest是核心启动类

service包是缓存调用例子,包含自定义表达式和结果解析、注解的使用

  •     当我们日常开发的时候,总会遇到一些缓存问题,说白了就是把项目中一些数据量较大且轻易不改动的数据放入缓存,以便后续请求可以迅速响应。因此我们可以使用redis作为缓存中间件,我认为使用redis也还是从俩个方面考虑:性能和并发。然后就是ace-cache基于spring boot上的注解缓存,自带轻量级缓存管理页面,比spring cache更轻量的缓存,支持单个缓存设置过期时间,可以根据前

  • 场景 使用ace-cache开源项目时,例如redisService.set(xx,xx),如果key或者value为null的话,就会出现错误,并记录错误日志,如果是刚开始的项目,从源头入手做好if判断即可,但是如果整个项目有很多地方都在使用了的话,可以考虑用AOP切一下,拦截一下null值,如果有null,则不继续调用方法。 上代码 package com.test.aop; /** *

  •   template部分: <editor @init="editorInit" @input="changeData" @setCompletions="setCompletions" :autoComplete=true :value='dataView' lang=

  • 1、ACE5-LITE stashnideden stashlpideden permitted behavior 0 0 WriteUniqueStash or StashOnce以外的所有trans 1 0 WriteUniqueStash or StashOnce,stash target只有physical intf 0 1 WriteUniqueStash or StashOnce, A

  • 1.@Cache加载@service中 2.service中A调用B方法, B方法上加上@Cache是不会写到redis中的。 解决方法: controller 直接调带有@Cache的service 3.ace-cache 切面中会将缓存的值转为JSON,所以存string类型的数据取数据时会有问题 解决方法:1-存其他类型数据 2 重写Aop

 相关资料
  • 对于缓存声明,抽象提供了一组 Java 注解: @Cacheable 触发缓存机制 @CacheEvict 触发缓存回收 @CachePut 更新缓存,而不会影响方法的执行 @Caching 组合多个缓存操作到一个方法 @CacheConfig 类级别共享系诶常见的缓存相关配置 下面,让我们仔细看看每个注释。 32.3.1 @Cacheable 注解 顾名思义,@Cacheable 用于标识可缓存

  • 我的Spring应用程序由两个上下文xml配置文件组成,第一个是根上下文。xml仅扫描非控制器带注释的bean: 而第二个servlet上下文。xml包含所有spring mvc设置和扫描控制器带注释的bean web.xml上的DispatcherServlet配置如下所示 我想尝试基于注释的缓存,所以我将以下bean定义添加到root-context.xml 并使用一个带有注释的类来测试这一点

  • 本文向大家介绍Spring Boot 基于注解的 Redis 缓存使用详解,包括了Spring Boot 基于注解的 Redis 缓存使用详解的使用技巧和注意事项,需要的朋友参考一下 看文本之前,请先确定你看过上一篇文章《Spring Boot Redis 集成配置》并保证 Redis 集成后正常可用,因为本文是基于上文继续增加的代码。 一、创建 Caching 配置类 RedisKeys.Jav

  • 本文向大家介绍详解基于Bootstrap扁平化的后台框架Ace,包括了详解基于Bootstrap扁平化的后台框架Ace的使用技巧和注意事项,需要的朋友参考一下 最近一段时间在做一个管理系统,在网上找了很久的前端展示框架,终于找到一款基于Bootstrap的后台管理系统模版:Ace。Bootstrap是Twitter 于2010年开发出来的前端框架,用过的同学应该知道,这款前端框架不仅界面很美观,而

  • 本文向大家介绍springboot集成spring cache缓存示例代码,包括了springboot集成spring cache缓存示例代码的使用技巧和注意事项,需要的朋友参考一下 本文介绍如何在springboot中使用默认的spring cache, 声明式缓存 Spring 定义 CacheManager 和 Cache 接口用来统一不同的缓存技术。例如 JCache、 EhCache、

  • swoole框架目前支持5种Cache适配器,可以配置apps/configs/cache.php的type来设定不同类型的Cache Memcache 使用memcache缓存数据,配置示例: $cache['master'] = array( 'type' => 'Memcache', 'use_memcached' => true, //使用memcached扩展 '