简单的web登录界面数据库验证 JSP+JavaBean

          web登录界面数据库验证是web开发最简单也是最基础的一个开发环节。本次开发模式为JSP(前端)+JavaBean(数据库验证)+Java(数据库连接)。代码工程目录如下:

简单的web登录界面数据库验证 JSP+JavaBean_第1张图片

          首先,JSP设计登录界面,简单起见,只有name和password两个文本输入框和submit提交按钮。所有的元素封存在

标签中。代码如下:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    login



日期为:<%= date %>

Welcome

用户名:
密 码:
<%----%>

      其次,设计MySQL数据库表单,数据库名称为:future-login-message,表单名称为login,结构如下:

简单的web登录界面数据库验证 JSP+JavaBean_第2张图片

      接着,用Java连接数据库。此处要注意两点:1、getCon方法的返回值类型为Connection。2、最好将连接方法getCon写成成员方法,方便后续调用。代码如下:

package connect;
import java.sql.*;
public class mysqlConnect {
    public Connection getCon() {   //定义类型为Connection的getCon()方法
        Connection con = null;
        String username = "root";
        String password = "lcglcg";
        String Driver = "com.mysql.jdbc.Driver";
        String url = "jdbc:mysql://localhost:3306/future-login-message";
        try {
            Class.forName(Driver);
            System.out.println("驱动加载成功!");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        try {
            con = DriverManager.getConnection(url, username, password);
            System.out.println("连接成功!");
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return con;    //返回值为Connection con
    }
}
     
     定义validate.jsp页面,设定在login.jsp点击登录按钮是的页面跳转页数据库查询验证。此处用到JavaBean组件,代码如下。

<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.Statement" %>
<%@ page import="java.sql.SQLException" %>
<%@ page import="java.sql.ResultSet" %>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    


<%--申明bean对象,将JavaBean变为脚本变量,可以通过脚本元素来访问其元素,将JavaBean实例化:ID--%>

<%--设置写入属性,将JavaBean中的name和password设置为当前页面的输入值--%>

<%--申明JavaBean对象,传入name和password对象,进行数据验证--%>


<%
if(test.valiuser(user))
   out.print("successful");
else
    out.print("fail");
%>

    在validate.jsp中定义了数据库查询操作的JavaBean,此处需要Java代码的实现,代码如下:

package MessageTest;
import java.sql.*;
import Bean.loginMeaasge;
import connect.mysqlConnect;

public class Test {
    private Connection con;
    private PreparedStatement pst;

    public Test() {      //定义Test的构造函数,实例化getCon方法,连接到数据库(Test对象的实例化在valadite.jsp的JSP:useBean完成)
        con = new mysqlConnect().getCon();//申明的connection对象con=mysqlConnect()对象的getcon方法
                       //new getcon()方法,将其实例化。   本段代码,一个对象等于另一个对象的成员方法?什么操作?
    }
    public boolean valiuser(loginMeaasge user) {     //实例化一个JavaBean对象:loginMeaasge user,用来执行JavaBean操作
        try {
            pst = con.prepareStatement("select * from `future-login-message`.login where name=? and password=?");
            pst.setString(1, user.getName()); //接收username值
            pst.setString(2, user.getPassword());
            ResultSet rs = pst.executeQuery();
            return rs.next();
        } catch (SQLException e) {
            e.printStackTrace();
            return false;// try 和catch两个模块都要分别定义返回值
        }
    }
}

         本段代码需要特别注意两个点; 1、在构造方法Test()中,申明的con对象=new mysqlConnection.getcon()方法,即一个对象等于另一个对象的成员方法,此处,con的属性为Connection,而getcon()方法的类型也为Connection. 2、定义成员方法boolean valiuser(loginMeaasge user)中,参数user类型为loginMeaasge,即此处的user是一个JavaBean3、使用prepareStatement()执行查询SQL语句是,两个?最后都要赋值。

      此时,全部代码构建完成,运行,得到登录信息结果。

      点击下载源码

你可能感兴趣的:(简单的web登录界面数据库验证 JSP+JavaBean)