项目解释
说明:本篇文章是对文章“ spring security简单入门(一):创建项目“的解释,也是本人对那个项目的理解。
我认为大家都是看了篇文章的哈。
大致流程
首先就是简单的说说项目的执行过程,让读者大概有一个概念。
index.jsp ---->输入地址localhost:8080/admin---->spring-security.xml---->1、成功(login.jsp)2、失败(login.jsp)------>login.jsp---->输入用户名密码登录---->spring-security.xml对比用户名和密码的正确性---->1、成功(返回admin)2、失败(login.jsp)----->成功的话,找到对应的controller中的方法,找到返回值---->springmvc.xml----->到视图层,返回数据。
解问
1、为什么在浏览器后面天上admin可以跳转到login.jsp页面?
配置文件spring-security.xml中有这样一句
2、不能直接访问admin.jsp中的内容?
你们可以看admin.jsp在WEB-INF的pages下面,WEB-INF下面的静态资源都是受保护的,需要一定的权限才能够访问,不信的话可以试试,启动项目,直接输入资源地址,看能否访问到。
3、为什么action写成j_spring_security_check?
我们使用的spring security版本是3.2.3.RELEASE,spring security 3.x 默认的登录拦截的url是/j_spring_security_check,而spring security 4.x默认拦截的URL是/login。在spring security中,具体处理表单登录验证的是o.s.s.w.a.UsernamePasswordAuthenticationFilter,另外一个过滤器o.s.s.w.a.ui.DefaultLoginPageGeneratingFilter用于在没有指定登录页时动态生成一个默认登录页。