idea实现简单的servlet的登录


 

前言        

 

环境

jdk1.8+tomcat8.5+idea2022

实现简单的登录界面,登录成功跳转,登陆失败在控制台显示。登录成功界面显示用户名,每十秒刷新时间,还可以点击链接返回。

  

 创建好web项目后进行如下。


 

一、创建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 java.io.IOException;

@WebServlet(name = "LoginServlet",urlPatterns = {"/login"})
public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String name=request.getParameter("name");
        String password=request.getParameter("password");
        request.getSession().setAttribute("name",name);
        if(name.equals("china") && "123".equals(password)){
            response.sendRedirect("success.jsp?uname="+name);
        }else{
            System.out.println("登入失败");
            response.sendRedirect("index.html");
        }
    }

}

登录名:china

登陆密码:123 

二、创建index.html和success.jsp

 

index.html主要完成登录界面

<!DOCTYPE html>
<html lang="en">
<h1>用户登录</h1>
<meta charset="UTF-8">
<title>登入页面</title>
</head>
<body>
<form action="login" method="post">
  账号:<input type="text" name="name"><br>
  密码:<input type="password" name="password"><br>
  <input type="submit" value="登录">
</form>
</body>
</html>

succes.jsp


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <meta http-equiv="refresh" content="10">//刷新时间
    <title>登录成功</title>
</head>
<body>
    <h1>主界面</h1>
    <%String name = request.getSession().getAttribute("name").toString();%>
    welcome name=<%=name %>
    <div class="box"></div>
    <script>
        function getTime() {
            var date = new Date();
            var year = date.getFullYear(); //获取年份
            var month = date.getMonth() + 1; //获取月份
            var day = date.getDate(); //获取日期
            var hour = date.getHours(); //获取小时
            hour = hour < 10 ? '0' + hour : hour;
            var minute = date.getMinutes(); // 获取分
            minute = minute < 10 ? '0' + minute : minute;
            var seconds = date.getSeconds(); //获取秒
            seconds = seconds < 10 ? '0' + seconds : seconds;
            return year + '年' + month + '月' + day + '日&nbsp;' + hour + ':' + minute + ':' + seconds;
        }
        setInterval(function() {
            document.querySelector('.box').innerHTML = getTime();
        }, 1000)
    </script>//获取时间
    <a href="index.html">返回重新登陆</a>
</body>
</html>

 

  • 2
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这里提供一个基本的登录注册页面的实现,其中使用JSP作为前端页面,Servlet作为后台处理程序。 1. 创建一个名为 "login.jsp" 的文件,编写登录页面的HTML代码。 ```html <!DOCTYPE html> <html> <head> <title>Login Page</title> </head> <body> <h1>Login</h1> <form action="loginServlet" method="POST"> <label>Username: </label> <input type="text" name="username"><br><br> <label>Password: </label> <input type="password" name="password"><br><br> <input type="submit" value="Login"> </form> <p>New User? <a href="register.jsp">Register here</a></p> </body> </html> ``` 2. 创建一个名为 "register.jsp" 的文件,编写注册页面的HTML代码。 ```html <!DOCTYPE html> <html> <head> <title>Registration Page</title> </head> <body> <h1>Registration</h1> <form action="registerServlet" method="POST"> <label>Username: </label> <input type="text" name="username"><br><br> <label>Password: </label> <input type="password" name="password"><br><br> <label>Confirm Password: </label> <input type="password" name="confirmPassword"><br><br> <input type="submit" value="Register"> </form> <p>Already registered? <a href="login.jsp">Login here</a></p> </body> </html> ``` 3. 创建一个名为 "LoginServlet.java" 的Servlet文件,用于处理登录请求。 ```java import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); String username = request.getParameter("username"); String password = request.getParameter("password"); if(username.equals("admin") && password.equals("1234")) { HttpSession session = request.getSession(); session.setAttribute("username", username); response.sendRedirect("welcome.jsp"); } else { out.println("Incorrect username or password."); } } } ``` 4. 创建一个名为 "RegisterServlet.java" 的Servlet文件,用于处理注册请求。 ```java import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class RegisterServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); String username = request.getParameter("username"); String password = request.getParameter("password"); String confirmPassword = request.getParameter("confirmPassword"); if(password.equals(confirmPassword)) { HttpSession session = request.getSession(); session.setAttribute("username", username); response.sendRedirect("welcome.jsp"); } else { out.println("Passwords do not match."); } } } ``` 5. 创建一个名为 "welcome.jsp" 的文件,用于显示欢迎信息。 ```html <!DOCTYPE html> <html> <head> <title>Welcome Page</title> </head> <body> <h1>Welcome <%= session.getAttribute("username") %>!</h1> <p>You have successfully logged in.</p> <a href="logoutServlet">Logout</a> </body> </html> ``` 6. 创建一个名为 "LogoutServlet.java" 的Servlet文件,用于处理注销请求。 ```java import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class LogoutServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); session.invalidate(); response.sendRedirect("login.jsp"); } } ``` 以上就是一个基本的登录注册页面的实现。需要注意的是,这里只是提供了一个简单的示例,实际的应用中还需要加入更多的安全性和验证机制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值