Spring MVC 项目搭建 -4- spring security-添加自定义登录页面
Spring MVC 项目搭建 -4- spring security-添加自定义登录页面
修改配置文件
<!--spring-sample-security.xml-->
<!-- 去除不需要拦截的url -->
<http pattern="/libs/**" security="none"/>
<http pattern="/login.html" security="none" />
<http pattern="/resources/**" security="none" />
<!-- 配置一层拦截,需要输入正确用户名密码才能访问网站 -->
<http auto-config="true" >
<!-- 拦截不是ROLE_USER的请求 -->
<intercept-url pattern="/*" access="ROLE_USER" />
<!-- 登录配置 -->
<form-login login-page="/login.html"
default-target-url="/test/mytest/loginSuccess"
authentication-failure-url="/test/mytest/loginFaild"/>
<!--退出登录配置-->
<logout invalidate-session="true"
logout-success-url="/"
logout-url="/j_spring_security_logout"/>
</http>
添加登录成功失败处理器
//TestController
/**
* 登录成功处理器
* @return
*/
@RequestMapping(value="/loginSuccess",method=RequestMethod.GET)
public @ResponseBody boolean loginSuccess(){
return true;
}
/**
* 登录失败处理器
* @return
*/
@RequestMapping(value="/loginFaild",method=RequestMethod.GET)
public @ResponseBody boolean loginFaild(){
return false;
}
添加页面
login.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="0o晓月メ">
<title>login</title>
<!-- bootstrap -->
<link href="libs/bootstrap-3.3.5/dist/css/bootstrap.min.css" rel="stylesheet">
<script type="text/javascript" src="libs/jquery/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="libs/bootstrap-3.3.5/dist/js/bootstrap.js"></script>
<!-- less -->
<link href="resources/less/main.less" rel="stylesheet/less" type="text/css">
<script src="libs/less/less.min.js" type="text/javascript"></script>
<script src="resources/js/login.js" type="text/javascript"></script>
</head>
<body class="main-body">
<div class ="main-container">
<div class="panel panel-info login-container">
<div class="panel-heading" style="text-align: left;">登录</div>
<div class="panel-body">
<form class="form-horizontal">
<div class="form-group">
<label for="userName" class="col-sm-2 control-label">用户名</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="userName" placeholder="UserName">
</div>
</div>
<div class="form-group">
<label for="password" class="col-sm-2 control-label">密码</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="password" placeholder="Password">
</div>
</div>
<button type="button" class="btn btn-info" id="loginBtn">登 录</button>
<button type="button" class="btn btn-info" id = "resetBtn">重 置</button>
</form>
</div>
</div>
</body>
</html>
login.js
$(function(){
// username field event
$('#userName')
.change(function(){
$('#password').val('');
})
.keydown(function(event){
if (event.keyCode == 13){
$('#password').focus();
}
});
// btn event
$('#loginBtn').click(function(event){
login();
});
$('#resetBtn').click(function(event){
$('#userName').val('').focus();
$('#password').val('');
});
});
function login(){
var userName = $('#userName').val(),
password = $('#password').val();
userName = $.trim(userName);
var loginBtn = $('#loginBtn');
loginBtn.attr("disabled", true);
$.ajax({
type : "POST",
dataType : 'json',
data : {
j_username: userName,
j_password: password
},
url : "j_spring_security_check",
success : function(result){
if(result) {
window.location.href = "main.html";
}else {
$('#username').focus();
loginBtn.removeAttr("disabled");
alert('failed');
}
},
error: function(err){
loginBtn.removeAttr("disabled");
}
});
};
main.html
<!DOCTYPE html>
<html style="height:100%">
<head>
<meta charset="utf-8">
<meta name="author" content="0o晓月メ">
<title>main</title>
<script type="text/javascript" src="libs/jquery/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
$(function(){
$('#btn-logout').click(function(event){
logout();
});
});
function logout(){
$.ajax({
type : "POST",
url : "./j_spring_security_logout",
success : function(result){
window.location.href = 'login.html'
},
error: function(){
}
});
};
</script>
</head>
<body >
<button type="button" id = "btn-logout">logout</button>
</body>
</html>
Spring MVC 项目搭建 -4- spring security-添加自定义登录页面的更多相关文章
- Spring MVC 项目搭建 -6- spring security 使用自定义Filter实现验证扩展资源验证,使用数据库进行配置
Spring MVC 项目搭建 -6- spring security使用自定义Filter实现验证扩展url验证,使用数据库进行配置 实现的主要流程 1.创建一个Filter 继承 Abstract ...
- Spring MVC 项目搭建 -5- spring security 使用数据库进行验证
Spring MVC 项目搭建 -5- spring security 使用数据库进行验证 1.创建数据表格(这里使用的是mysql) CREATE TABLE security_role ( id ...
- Spring MVC 项目搭建 -3- 快速 添加 spring security
Spring MVC 项目搭建 -3- 快速 添加 spring security 1.添加 spring-sample-security.xml <!-- 简单的安全检验实现 --> & ...
- Spring MVC 项目搭建 -2- 添加service ,dao,junit
Spring MVC 项目搭建 -2- 添加service ,dao,junit 1.dao public class Hero { private String name; public Strin ...
- Spring MVC 项目搭建 -1- 创建项目
Spring MVC 项目搭建 -1- 创建项目 1.创建 Dynamic Web project (SpringDemo),添加相关jar包 2.创建一个简单的controller类 package ...
- IDEA 创建Spring MVC项目搭建
概述 IntelliJ IDEA是一款更加集成智能的开发工具,相对Myeclipse开发而言,使用起来相对更加的方便:初步手动使用IDEA搭建Spring MVC项目,现将操作流程整理记录如下. 环境 ...
- 简单Spring MVC项目搭建
1.新建Project 开发环境我使用的是IDEA,其实使用什么都是大同小异的,关键是自己用的顺手. 首先,左上角File→New→Project.在Project页面选择Maven,然后勾上图中所示 ...
- Java Spring MVC项目搭建(二)——项目配置
1.站点配置文件web.xml 每一个Spring MVC 项目都必须有一个站点配置文件web.xml,他的主要功能吗....有一位大哥已经整理的很好,我借来了,大家看看: 引用博客地址: http: ...
- Java Spring MVC项目搭建(一)——Spring MVC框架集成
1.Java JDK及Tomcat安装 我这里安装的是JDK 1.8 及 Tomcat 8,安装步骤详见:http://www.cnblogs.com/eczhou/p/6285248.html 2. ...
随机推荐
- hive网站日志数据分析
一.说在前面的话 上一篇,楼主介绍了使用flume集群来模拟网站产生的日志数据收集到hdfs.但我们所采集的日志数据是不规则的,同时也包含了许多无用的日志.当需要分析一些核心指标来满足系统业务决策的时 ...
- 微信小程序demo
微信小程序demo github地址 去年小程序刚发布时特别火,赶潮流做了个demo.感觉小程序开发还是比较简单的,主要是官方文档写得比较好,遗憾的是很多API需要微信认证才能使用. 由于小程序包大小 ...
- Vulkan Tutorial 02 编写Vulkan应用程序框架原型
操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 General structure 在上一节中,我们创建了一个正确配置.可运行的的V ...
- PC端网页的基本构成
首先,一个前端最基本的就是排网页,有人会看不起拍页面,认为不就是排一个页面嘛,有啥的,分分钟的事,可是他不知道的是,一个网页中也包含了很多内容,像我们如果不理解margin,padding,会经常对我 ...
- Zxing 的集成 ---- Maven 对应 Gradle 的写法
Zxing 的集成 ---- Maven 对应 Gradle 的写法 刚刚想耍耍二维码,想到了zxing和zbar,又想到zxing是Google老爹的,想想就算了吧,虽然zbar快但是识别错误率也高 ...
- XOR 加密简介
本文介绍一种简单高效.非常安全的加密方法:XOR 加密. 一. XOR 运算 逻辑运算之中,除了 AND 和 OR,还有一种 XOR 运算,中文称为"异或运算". 它的定义是:两个 ...
- 与我们息息相关的internet服务(1)---域名服务
在起步一个公司,从组建的技术上,可能要准备很多东西,其中一个就是我们熟悉的域名-----域名可以用在邮箱中.网站中等等 域名,听起来很怪的一个词(他类似于电话本的作用),但理解起来很简单,想法也很简单 ...
- java基础(三章)
java基础(三章) 一.基本if结构 1.流程图 l 输入输出 l 判断和分支 l 流程线 1.1 简单的if条件判断 if(表达式){ //表 ...
- openresty使用笔记(一)
背景介绍 游戏经过一段时间的运营,发现了原来的设计缺陷太多,所以决定重新设计架构.使用到nginx作为核心并通过lua+redis设计实现自己的负载分配方案.先看看下面这张简单的架构图吧~ 从图上看, ...
- (文件)图片上传,Spring或SpringMVC框架
spring或springMVC框架图片(文件)上传 页面部分,用一个简单的form表单提交文件,将图片或文件提交到服务端.一个输入框,用于输入图片的最终名称,一个file文件选择,用于选择图片. 页 ...