最近考虑给自己的平台增加新的登陆方式,上网查了一下相关的资料
.我用的权限平台为shiro,如果要实现,需要实现多个Realm,我个人觉得这种方法有点麻烦,每增加一种登陆方式,都要实现Realm,就希望有一些简单的办法...整理需求如下:
支持普通的用户密码验证
密码验证可以让用户自由扩展,不一定是md5
支持用户免密码验证
新增登陆方式时,如需要新增手机号登陆,最少改动原有的代码
经思考,实现如下:
1.先实现自定义对象...public interface ILoginService {
/**
* 通过token查找用户的信息
* 可以是通过登陆名,也可以通过手机号,关键是UserNameLoginToken...userNameLoginToken);
/**
* 判断是否是该登陆类型的实现类
* @param loginType
* @return
*/...可能是登陆名,手机号,邮箱,不确实,可扩展
UserInfoDto userInfo = LoginServiceUtil.getLoginServcie(userNameLoginToken.getLoginType