当前位置: 首页 > news >正文

张家界做网站百度人工客服在哪里找

张家界做网站,百度人工客服在哪里找,昆明做网站比较牛的,网站样式shiro整合redis 前言:shiro默认的session是存储在jvm内存中的,这样会导致java服务内存占用更大以及一旦服务器宕机或者版本迭代需要重启服务时,缓存中的数据不能恢复,导致用户需要重新登录认证,体验很差。因此利用第三…

shiro整合redis

前言:shiro默认的session是存储在jvm内存中的,这样会导致java服务内存占用更大以及一旦服务器宕机或者版本迭代需要重启服务时,缓存中的数据不能恢复,导致用户需要重新登录认证,体验很差。因此利用第三方服务作为缓存十分重要。

shiro有相关的shiro-redis整合的依赖包,使用起来也十分方便,下面就介绍下使用方法

本文前提是已搭建好shiro的简单框架,配置好realm以及配置类(设置好SecurityManager等)

1.引入shiro-redis依赖

		<!-- shiro --><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-spring</artifactId><version>1.13.0</version></dependency>		<!-- shiro-redis --><dependency><groupId>org.crazycake</groupId><artifactId>shiro-redis</artifactId><version>3.3.1</version></dependency>

2.配置redis数据源

其实不需要配置,因为在下面的RedisManager是直接将参数设置进入的,yaml文件的配置并不生效。

但是因为其他业务也可能用到redis,所以在yaml中配置,下面的RedisManager可以通过@Value(“$spring.redis.xxx”)进行引入,避免撤换redis数据源时,需要修改多处地方。

spring:redis:host: 127.0.0.1port: 6379database: 0jedis:pool:max-idle: 8min-idle: 0max-active: 8max-wait: -1timeout: 0

3.配置ShiroConfig类

在ShiroConfig类中,将redis设置为session的缓存,在原有基础上添加以下代码

    /*** redisManager* @return*/public RedisManager redisManager() {RedisManager redisManager = new RedisManager();// 高版本的shiro-redis,取消setPort方法,需要将Port和Host写在一起redisManager.setHost("127.0.0.1:6379");// 配置过期时间redisManager.setTimeout(1800);return redisManager;}/*** cacheManager* @return*/public RedisCacheManager cacheManager() {RedisCacheManager redisCacheManager = new RedisCacheManager();redisCacheManager.setRedisManager(redisManager());return redisCacheManager;}/*** redisSessionDAO*/public RedisSessionDAO redisSessionDAO() {RedisSessionDAO redisSessionDAO = new RedisSessionDAO();redisSessionDAO.setRedisManager(redisManager());return redisSessionDAO;}/*** sessionManager*/public DefaultWebSessionManager SessionManager() {DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();sessionManager.setSessionDAO(redisSessionDAO());return sessionManager;}

然后在之前的配置上,将session管理器和cache管理器注入到SecurityManager中

    /*** 配置SecurityManager* @param myRealm* @return*/@Beanpublic SecurityManager securityManager(Realm myRealm){DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();//设置一个Realm,这个Realm是最终用于完成我们的认证号和授权操作的具体对象securityManager.setRealm(myRealm);securityManager.setSessionManager(sessionManager());securityManager.setCacheManager(cacheManager());return securityManager;}

4.测试

保证redis参数正常,连接正常,启动项目

访问登录连接
在这里插入图片描述

redis被成功写入,见下图

在这里插入图片描述

经过在doGetAuthenticationInfo方法和doGetAuthorizationInfo方法中设置简单输出语句,发现只在第一次登录时进入认证方法,第一次授权时进入授权方法。后续都不再进入该方法。

至此,Shiro+Redis集成完毕

http://www.hkea.cn/news/221221/

相关文章:

  • 网站专题页是什么中国十大关键词
  • 五月天做网站网络策划与营销
  • 高校网站如何建设论文谷歌官网下载
  • 做网站内容软件个人网站怎么做
  • 收废铁的做网站有优点吗海南百度推广开户
  • wordpress 二维码插件下载信阳搜索引擎优化
  • 个人网站二级域名做淘宝客企业推广策略
  • 厦门做网站seo的seo服务公司招聘
  • 安徽池州做企业网站百度搜索官方网站
  • 芜湖商城网站建设青岛百度快速优化排名
  • 我找伟宏篷布我做的事ko家的网站seoul怎么读
  • 即墨做网站优书网首页
  • 网站建设实践报告3000字放单平台
  • 中华人民共和国城乡住房建设厅网站seo技术外包
  • 网站做销售是斤么工作东莞网站营销推广
  • 做网站现在还行吗宁德市疫情
  • 响应式网站首页百度搜索资源
  • 工人找工作哪个网站好福州百度seo
  • 台湾做甜品的网站谷歌seo关键词排名优化
  • 织梦网站导入链接怎么做谷歌广告投放
  • 沈阳网站哪家公司做的好镇江关键字优化品牌
  • 台州本地做网站的做引流推广的平台600
  • 网站的导航用css怎么做网站外链查询
  • 青岛模版网站建设关键词优化按天计费
  • 高端网站建设服务器seo服务哪家好
  • 服装网站建设分析网站浏览器
  • 建站城企业邮箱怎么开通注册
  • html做动态网站cms
  • 一个网站建设需要多少钱百度seo排名优化公司
  • 网站做app的软件友博国际个人中心登录