真的不知道写点什么
@Cacheable:主要针对方法配置,能够根据方法的请求参数对其结果进行缓存
@CacheEvict:清空缓存
@Cacheput:保证方法被调用,又希望结果被缓存
@EnableCacheing:开启基于注解的缓存
缓存将方法的运行结果进行缓存,以后再要相同的数据,直接从缓存中获取,不用调用方法;
CacheManager管理多个Cache组件,对缓存的真正CRUD操作在Cache组件中,每一个缓存组件都有自己唯一一个名字
属性 :cahceNames/value:指定缓存组件的名字
key:缓存数据使用的key: 可以用它来指定,可以用参数来代表,结果为value
keyGenerator:key的生成器;可以自己指定组件id
Key/keyGenerator 二选一
condition:制定符合条件的情况才缓存
unless:否定缓存,为是不缓存 #result代表结果
cacheput可以更新数据库,并且更新缓存关键在于id要一样
Key=“#result.id”
8
@CacheEvict:缓存清除
可以指定key
如果allentries=true代表清除缓存中所以的数据
beforeInvocation=true
代表清除缓存操作是在方法运行之前就执行,无论方法是否出现异常,缓存都清除
@CacheConfig(cacheNames="emp")//抽取缓存的公共配置
默认使用的是CoucurrentmapCachemanger==ConcurrentmapCache
Redis
字符串 用 append msg hello
List 的添加用append
弹出并且删除
set的添加时 sadd myset lisi zhangsan
查询set是smembredis myset
检查set集合中是否包含某个集合 sismember myset lisu
如果返回1代表有
Redis常见的五大数据类型
String 字符串 list列表 set集合 hash散列 zset(有序集合)