/**
* Redis内session过期事件监听
*
* @param expiredEvent
*/
@EventListener
public void onSessionExpired(SessionExpiredEvent expiredEvent) {
  logLoginService.doExit(expiredEvent.getSessionId());
  LogLoginVO logLoginVO = logLoginService.querySessionId(expiredEvent.getSessionId());

  if (null != logLoginVO) {
    SmsUtils.sendMsg(MsgType.TIMEOUT_MSG, "timeout", logLoginVO.getUsrId().toString());
    logger.debug("用户{}登录超时", UserCache.getUserName(logLoginVO.getUsrId()));
  }
}

/**
* Redis内session删除事件监听
*
* @param deletedEvent
*/
@EventListener
public void onSessionDeleted(SessionDeletedEvent deletedEvent) {
    logLoginService.doExit(deletedEvent.getSessionId());
}

/**
* Redis内session保存事件监听
*
* @param createdEvent
*/
@EventListener
public void onSessionCreated(SessionCreatedEvent createdEvent) {
    String sessionId = createdEvent.getSessionId();
}


SPRINGBOOT      SESSION 事件监听

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!