用户唯一登陆需求:要求当账号第一次被登陆时可以正常登陆,当账号在别处登陆时,将退出之前登陆。
大概流程如下:
项目启动时,首先清空之前登陆记录,防止出错。第一次登陆判断redis是否有登陆记录,没有则登陆成功。第二次登陆判断redis有登陆记录,获取之前登陆记录并删除,第二次登陆成功。
一、将redis缓存删除。
创建启动类并实现CommandLineRunner接口。首先说明我将登陆用户名作为key,sessionID作为value存入redis。记得在启动类加@ServletComponentScan注解
@Component
public class Runner implements CommandLineRunner {
private final Log logger = LogFactory.getLog(Runner.class);
@Resource
GwUserService gwUserService;
@Resource
private RedisTemplate redisTemplate;
/**
* 单用户登录设置
* @param args
* @throws Exception
*/
@Override
public vo