Shiro 中 filter与realm的区别

nullcy 2012-05-28

过滤器是Web中所特有的。Realm是Shiro架构本身的。

例如:表单验证过滤器,仅是判断是否是表单,而后调用Subject.login方法,如果成功就跳往成功页面,不成功,则跳回登录页。

在调用subject.login方法时,就应用到了Realm.如果将用户名密码写在ini文件中,则先调用的是iniRealm。

同理,logout过滤器,则仅是获取当前的subject,然后调用subject的logout方法。

可见,过滤器仅是方便于Web中一些常用安全路径的封装。像登录、退出等功能,也完全可以自己写一个Action等,进行处理。只是过滤器帮你完成而已。

且默认的Realm正是iniRealm

相关推荐