在项目中我们肯定不能使用Spring自己生成的登录页面,而要用我们自己的登录页面,下面讲一下如何自定义登录页面,先看下配置
~~~
<sec:http auto-config="true">
<sec:intercept-url pattern="/app.jsp" access="ROLE_SERVICE"/>
<sec:intercept-url pattern="/**" access="ROLE_ADMIN"/>
<sec:form-login login-page="/login.jsp" authentication-failure-url="/login.jsp"
default-target-url="/index.jsp"/>
</sec:http>
~~~
使用form-login配置来指定我们自己的配置文件,其中
login-page:登录页面
authentication-failure-url:登录失败后跳转的页面
default-target-url:登录成功后跳转的页面
在登录页面中
表单提交地址为:j_spring_security_check
用户名的name为:j_username
密码的name为:j_password
提交方式为POST
重启Tomcat后,再次打开项目发现登录页面已经变成了我们自己的登录页面,如下图
![](https://box.kancloud.cn/2016-06-22_576a4b28d6d98.jpg)
如果提示页面循环的错误,是因为没有设置登录页面不需要验证,增加如下配置就可以了
~~~
<security:http pattern="/login.jsp" security="none" />
~~~
输入用户名密码后跳转到了我们指定的页面
![](https://box.kancloud.cn/2016-06-22_576a4b28a8e8a.jpg)
注:重启Tomcat有时候并不会使Session失效,在测试的时候可能会出现,明明重启了Tomcat可以访问资源时却没有跳到登录页面。所以需要重启浏览器再重试就可以了。
- 前言
- (大纲)----学习过程分享
- (1)----SpringSecurity3.2环境搭建
- (2)----SpringSecurity简单测试
- (3)---- 自定义登录页面
- (4)---- 数据库表结构的创建
- (5)---- 国际化配置及UserCache
- (6)---- 使用数据库管理用户及权限
- (7)---- 解决UsernameNotFoundException无法被捕获的问题
- (8)---- 自定义决策管理器及修改权限前缀
- (9)---- 自定义AccessDeniedHandler
- (10)---- 自定义登录成功后的处理程序及修改默认验证地址
- (11)---- 使用数据库来管理资源
- (12)---- 使用数据库来管理方法
- (13)---- 验证码功能的实现
- (14)---- Logout和SessionManager