課程
/后端開發(fā)
/Java
/Shiro安全框架入門
課程里設(shè)置了redis的失效時間,意味著10分鐘之后是否必失效。 那么是否就意味著你10分鐘之后一定要重新登錄一次呢?
2018-05-31
源自:Shiro安全框架入門 5-3
正在回答
你可以重寫更新session的方法,每次操作當(dāng)前會話都會刷新session的過期時間,以下是參考的zheng項目的代碼:
@Override protected?void?doUpdate(Session?session)?{ ????//?如果會話過期/停止?沒必要再更新了 ????if(session?instanceof?ValidatingSession?&&?!((ValidatingSession)session).isValid())?{ ????????return; ????} ????//?更新session的最后一次訪問時間 ????UpmsSession?upmsSession?=?(UpmsSession)?session; ????UpmsSession?cacheUpmsSession?=?(UpmsSession)?doReadSession(session.getId()); ????if?(null?!=?cacheUpmsSession)?{ ????????upmsSession.setStatus(cacheUpmsSession.getStatus()); ????????upmsSession.setAttribute("FORCE_LOGOUT",?cacheUpmsSession.getAttribute("FORCE_LOGOUT")); ????} ????RedisUtil.set(ZHENG_UPMS_SHIRO_SESSION_ID?+?"_"?+?session.getId(),?SerializableUtil.serialize(session),?(int)?session.getTimeout()?/?1000); ????//?更新ZHENG_UPMS_SERVER_SESSION_ID、ZHENG_UPMS_SERVER_CODE過期時間?TODO ????LOGGER.debug("doUpdate?>>>>>?sessionId={}",?session.getId()); }
舉報
從零入門Shiro安全框架
4 回答securityManager設(shè)置realm之后,realm再設(shè)置matcher,怎么生效的?
1 回答在spring配置文件里配置 filterChainDefinitions攔截器失效
2 回答spring-redis文件有問題。
2 回答redis配置不成功,報錯java.lang.ClassNotFoundException: redis.clients.jedis.JedisPoolConfig
2 回答加入shiroFillter之后spring注解失效了
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2018-06-01
你可以重寫更新session的方法,每次操作當(dāng)前會話都會刷新session的過期時間,以下是參考的zheng項目的代碼: