用法
Spring Security框架默认的登录页如下图所示。
这个界面元素太少,况且不易去调整,也不满足日常的场景。所以,大多数情况下,我们需要自定义登录页。
其实,自定义登录页也非常简单,只需要一个登录页面、一个Controller、Spring Security配置稍微调整下,就可以了。
登录页面
我们采用Spring Security框架默认的用户名、密码参数名、filterProcessUrl等。
<form action="/login" method="post" th:action="@{/login}" th:method="post">
<div>
<input type="text" name="username" placeholder="用户名">
</div>
<div>
<input type="password" name="password" placeholder="密码">
</div>
<button type="submit">登录</button>
</form>
Controller
controller也比较简单。
@RequestMapping("/login")
public String login() {
return "login";
}
配置调整
只需在原来的配置基础上,加上 loginPage 设置项并放开权限即可。
http.formLogin().loginPage("/login").permitAll()
演示
启动工程,访问首页 http://localhost:8080/springsecuritylearning/index,系统跳转到了我们自定义的登录页。
输入用户名、密码后,正常展示首页。
源码
github
https://github.com/liuminglei/SpringSecurityLearning/tree/master/02
gitee
https://gitee.com/xbd521/SpringSecurityLearning/tree/master/02
回复以下关键字,获取更多资源
SpringCloud进阶之路 | Java 基础 | 微服务 | JAVA WEB | JAVA 进阶 | JAVA 面试 | MK 精讲
笔者开通了个人微信公众号【银河架构师】,分享工作、生活过程中的心得体会,填坑指南,技术感悟等内容,会比博客提前更新,欢迎订阅。