1、login.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="../resource/layUI/layui-v2.5.4/layui/css/layui.css">
</head>
<body layadmin-themealias="default">
<style>
body{
text-align: center;
}
#LAY-user-login{
width:30%;
height:30%;
text-align: center;
border:1px solid silver;
padding:40px 100px;
margin: 50px auto;
}
</style>
<div class="layadmin-user-login layadmin-user-display-show" id="LAY-user-login" style="display: block;">
<div class="layadmin-user-login-main">
<div class="layadmin-user-login-box layadmin-user-login-header">
<h2>登录</h2>
</div>
<div class="layadmin-user-login-box layadmin-user-login-body layui-form">
<div class="layui-form-item">
<label class="layadmin-user-login-icon layui-icon layui-icon-username" for="LAY-user-login-username"></label>
<input type="text" name="username" id="LAY-user-login-username" lay-verify="required" placeholder="用户名" class="layui-input">
</div>
<div class="layui-form-item">
<label class="layadmin-user-login-icon layui-icon layui-icon-password" for="LAY-user-login-password"></label>
<input type="password" name="password" id="LAY-user-login-password" lay-verify="required" placeholder="密码" class="layui-input">
</div>
<div style="height: 20px">
</div>
<div class="layui-form-item">
<button onclick="login()" class="layui-btn layui-btn-fluid" lay-submit="" lay-filter="LAY-user-login-submit">登 入</button>
</div>
</div>
</div>
</div>
<script src="../resource/jquery/jquery-3.4.1.min.js"></script>
<script src="../resource/layUI/layui-v2.5.4/layui/layui.all.js"></script>
<script>
function login() {
var username = $("#LAY-user-login-username").val();
var password = $("#LAY-user-login-password").val();
$.ajax({
type:"post",
url:"/LoginServlet",
data:{
"username":username,
"password":password
},
success:function (result) {
if(result=="1"){
window.location.href="http://localhost:8080/index.html"
}else{
alert("登录失败!")
}
}
});
}
</script>
<style id="LAY_layadmin_theme">.layui-side-menu,.layadmin-pagetabs .layui-tab-title li:after,.layadmin-pagetabs .layui-tab-title li.layui-this:after,.layui-layer-admin .layui-layer-title,.layadmin-side-shrink .layui-side-menu .layui-nav>.layui-nav-item>.layui-nav-child{background-color:#20222A !important;}.layui-nav-tree .layui-this,.layui-nav-tree .layui-this>a,.layui-nav-tree .layui-nav-child dd.layui-this,.layui-nav-tree .layui-nav-child dd.layui-this a{background-color:#009688 !important;}.layui-layout-admin .layui-logo{background-color:#20222A !important;}</style><div class="layui-layer-move"></div></body>
</html>
2、LoginServlet
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
@WebServlet(name = "LoginServlet",value = "/LoginServlet")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
HttpSession session = request.getSession();
if(username!=null&&password!=null&&username.equals("admin")&&password.equals("123456")){
session.setAttribute("username",username);
session.setAttribute("password",password);
response.getWriter().print("1");
}else {
response.getWriter().print("0");
}
}
}
3、closeLogin()
<li class="layui-nav-item"><a href="javaScript:closeLogin();">退了</a></li>
function closeLogin() {
$.ajax({
type:"post",
url:"CloseLoginServlet",
data:{
"close":"close"
}
});
window.location.href="http://localhost:8080/pages/login.html";
}
4、CloseLoginServlet
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
@WebServlet(name = "CloseLoginServlet",value = "/CloseLoginServlet")
public class CloseLoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession();
session.setAttribute("username","");
session.setAttribute("password","");
}
}
5、successFilter(可以定义多个Filter,在web.xml里定义再创建Filter类,比如完成统一设置编码的功能等)
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class successFilter implements Filter{
//建立一个过滤器对象用于实现对success.jsp页面当中的请求信息进行过滤操作
@Override
public void destroy() {
System.out.println("进行过滤器对象的销毁操作");
}
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
throws IOException, ServletException {
System.out.println("执行过滤操作");
HttpServletRequest request=(HttpServletRequest)req;//进行request对象的强制转化
HttpServletResponse response = (HttpServletResponse)res;
HttpSession session=request.getSession();//通过Httprequest对象来进行session对象的获取操作
if(session.getAttribute("username")==null ||
!session.getAttribute("username").equals("admin")) {
response.sendRedirect("http://localhost:8080/pages/login.html");
}
System.out.println("过滤权限转交之前");
chain.doFilter(req, res);//进行控制权限的转交操作
System.out.println("过滤权限转交之后");
}
@Override
public void init(FilterConfig arg0) throws ServletException {
System.out.println("进行过滤器对象的初始化操作:");
}
}
web.xml
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<filter>
<filter-name>successFilter</filter-name>
<filter-class>filter.successFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>successFilter</filter-name>
<url-pattern>/index.html</url-pattern>
</filter-mapping>
</web-app>
版权声明:本文为weixin_41879646原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。