我想不通为什么,明明没有写controller没有调service的方法,但是执行到login就直接跳转到实现类中了,然后查数据库了,是因为shiro底层有实现吗?

我想不通为什么,明明没有写controller没有调service的方法,但是执行到login就直接跳转到实现类中了,然后查数据库了,是因为shiro底层有实现吗?

首先,代码中通过 SecurityUtils.getSubject() 获取到当前用户的 Subject 对象。
然后,将用户提交的用户名和密码封装到 UsernamePasswordToken 对象中,作为用户登录的凭证。
最后,调用 subject.login(passwordToken) 进行用户登录操作。Shiro 会去调用自定义的 Realm 类的相关方法,从数据库或其他数据源中获取用户信息并进行验证。登录成功后,会返回 "登录成功";如果登录失败,会抛出异常,并进入 catch 块,返回 "登录失败"。