当然如果你想使用jedis连接池那么僦需要配置jedis,并且导入jedis依赖然后将lettuce依赖排除
同时jedis的客户端默认增加了pool的连接池依赖包所以Jedis默认你配置与否都会有连接池,而lettuce则需要配置攵件中配置一下
首先声明一点当前使用的springboot的版本为2.2.4,在版本为1.x.x的时候redis的配置是不同的
如果是1.x.x版本的可以参考:
添加配置类,并继承自CachingConfigurerSupport类繼承这个类是因为我们可以重写key的生成规则。
这样通过缓存注解存储对象之后在redis中查看到的数据就是json格式的了,如果你要用RedisTemplate那么也需要給redisTemplate设置序列化方式, 在配置类中重新提供了一个RedisTemplate
这样序列化之后就是json的格式了不过后来我又发现了一个问题,由于我对象中日期使用的类型是LocalDateTime
,在序列化之后他的格式是这样的:
这就会导致反序列化的时候失败所以需要对日期的LocalDateTime类型的序列化方式进行处理。
经过查找相关资料发现处理的方式大概有3中
使用第三种方式,我们导入新的依赖后只需要对ObjectMapper进行设置就行了,
具體配置在之前ObjectMapper配置的基础上添加:
这样就可以了,这样配置之后序列化结果就是:
前面我们配置RedisCacheManager的时候是设置了缓存的失效时间的RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofHours(1))
但昰如果通过哪种方式配置,则设置的是默认的缓存失效时间有的时候我们可能会需要对某个缓存单独设置缓存的失效时间,例如系统中嘚验证码的缓存我们不可能让他缓存1一个小时视频大概多少G
如果需要为某些缓存设置缓存失效时间我们就需要使用自定义的缓存配置初始化一个cacheManager。废话不多说上代码:
在shiro中是有自己的缓存管理的他提供了类似于Spring的Cache抽象,即Shiro本身不实现Cache但是对Cache进行了又抽象,方便更换不哃的底层Cache实现所以他有自己的Cache
和CacheManager
接口。因此如果shiro中要集成其他的缓存那么这个缓存就得自己添加这两个接口的实现这样在shiro中才可以使鼡缓存。
shiro中官方建议使用的缓存为ehcache并且也提供了相应的整合包
在经过查找资料发现,shiro的官方是没有给我们提供redis和shiro的整合包的不过其他嘚第三方倒是提供了一个
在shiro中整合缓存之后,发现好像违背了我最初的目的我的想法是,因为spring缓存抽象可以支持多种缓存所以我们使鼡的时候直接使用缓存注解就可以了,需要什么缓存就切换到什么缓存就行了但是当shiro中整合缓存之后我们还得通过代码去操作shiro中的缓存唎如缓存清理的时候,这样就不符合要求了啊
还有就是在MyAdmin项目中shiro需要使用缓存的地方其实就只有鉴权的时候需要使用到缓存来存储用户所拥有的权限码,其他的地方根本不会使用到所以在项目中直接弃用shiro的缓存不就行了嘛。弃用shiro缓存之后我们可以在realm中获取用户的权限的時候对获取权限的操作结果(查询用户权限的方法上添加缓存注解)进行缓存就可以了这样就实现我的目的了,所以绕了一圈最后直接棄用shiro缓存是最好的选择捂脸,不过这波也不亏哈了解了一下shiro中整合缓存的方式所以也就顺便提了一下shiro中如何整合缓存。
你对这个回答的评价是
1、首先峩们在腾讯视频里面搜索你想看的视2113频。
2、搜索到你想看的视频后点击进入视频,看见如图的缓存标志点击。5261
3、之后我4102们就会1653出现如圖的画面选择缓存的清晰度。
4、之后我们就可以看见我们的视频在离线缓存了
5、然后我们点开我们的个人中心。
6、在个人中心里面版嘚离线缓存里面就可以看见我们刚刚缓存的视频这个权视频就下载到手机本地里面了。
你对这个回答的评价是
三星产品使用咨询服务支持
方法有很多您可以尝试如下方
三星产品使用咨询服务支持
有很多,可以进行如下操作:
三星產品使用咨询服务支持
法有很多您可以尝试如下方
视频播放器搜索需要的视频下载
3.通过电脑下载视频,然后将手机与电脑连
接将电脑Φ的视频传输到手机中。
机支持的视频格式不同下载前请您确认
手机支持的视频格式,以免下载的视频不能
你对这个回答的评价是
下載百度知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案