`
joinhack
  • 浏览: 14438 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

spring mvc简单security实现思路

阅读更多

今天在设计网站登录的时候,想到使用spring security来完成这个功能,由于网站业务来说对于用户的访问控制是很粗的,一般情况下只需要判断用户是否登录,登录后的权限最多也只有2,3种,在这种情况下对spring security是否在效率上胜任抱有怀疑态度,于是至少要准备一个简单高效的备用方案。

大体思路是:

1、创建@LoginRequred的Annotation,用于标识controller的方式是必须登录才能访问的。

2、创建继承于ContextLoaderListener的子类,override方法public void contextInitialized(ServletContextEvent event) 获得WebApplicationContext

3、通过WebApplicationContext根据@Controller找出所有的Controller,然后分析Controller里面是否带有@LoginRequred(可以通过ApplicationContext的findAnnotationOnBean来找,例子通过参照DefaultAnnotationHandlerMapping的determineUrlsForHandlerMethods方法)

4、使用Spring MVC的拦截器,在拦截器中判断是否该方法需要登录验证判断。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics