Java组件javabean用户登录实例详解

JavaBean 是Java语言编写的可重用组件,具有如下特征:

Java组件javabean用户登录实例详解

什么是JavaBean?

JavaBean 是Java语言编写的可重用组件,具有如下特征:

  • 公共的无参构造方法
  • 成员变量为私有的,公共的Getter和Setter方法
  • 可序列化

用户登录实例

本文将介绍如何使用JavaBean实现用户登录功能。

编写JavaBean

首先,我们要编写一个JavaBean,该JavaBean中定义了用户信息,包括用户名和密码。

package com.example.lukas.bean;

import java.io.Serializable;

public class User implements Serializable {
    private String username;
    private String password;

    public User() {
    }

    public User(String username, String password) {
        this.username = username;
        this.password = password;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

实现登录功能

在JSP页面中,我们通过HTML表单来获取用户输入的用户名和密码,然后将其封装到User对象中,并将User对象传递给Servlet。

<form action="login" method="post">
    <label for="username">用户名:</label>
    <input type="text" name="username" id="username">
    <br>
    <label for="password">密码:</label>
    <input type="password" name="password" id="password">
    <br>
    <input type="submit" value="登录">
</form>

在Servlet中,我们从请求参数中获取用户名和密码,然后与预先定义好的用户名和密码进行判断,如果相同,表示登录成功,否则登录失败。

package com.example.lukas.servlet;

import com.example.lukas.bean.User;

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;
import java.io.PrintWriter;

@WebServlet(name = "LoginServlet", urlPatterns = {"/login"})
public class LoginServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    private static final String USERNAME = "admin";
    private static final String PASSWORD = "admin";

    public LoginServlet() {
        super();
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        String password = request.getParameter("password");

        User user = new User(username, password);

        response.setContentType("text/html;charset=UTF-8");

        PrintWriter out = response.getWriter();

        if (USERNAME.equals(user.getUsername()) && PASSWORD.equals(user.getPassword())) {
            out.println("<html>");
            out.println("<head><title>登录结果</title></head>");
            out.println("<body>");
            out.println("<h1>登录成功</h1>");
            out.println("</body>");
            out.println("</html>");
        } else {
            out.println("<html>");
            out.println("<head><title>登录结果</title></head>");
            out.println("<body>");
            out.println("<h1>用户名或密码错误</h1>");
            out.println("</body>");
            out.println("</html>");
        }

        out.flush();
        out.close();
    }
}

示例说明

示例一

假设我们预先定义的用户名和密码为"admin"和"admin"。

当用户输入的用户名和密码都为"admin"时,登录成功。

当用户输入的用户名或密码不为"admin"时,登录失败。

示例二

假设我们预先定义的用户名和密码分别为"admin"和"123456"。

当用户输入的用户名为"admin",密码为"123456"时,登录成功。

当用户输入的用户名为"admin",密码不为"123456"时,登录失败。

当用户输入的用户名不为"admin",无论密码如何,登录失败。

本文标题为:Java组件javabean用户登录实例详解

基础教程推荐