Java web学习笔记--利用JDBC访问数据库

一、JDBC相关知识回顾

1、JDBC概述

JDBC(Java DataBase Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。
Java web学习笔记--利用JDBC访问数据库_第1张图片
Java web学习笔记--利用JDBC访问数据库_第2张图片
2、JDBC API

JDBC API可做三件事:与数据库建立连接、执行SQL 语句、处理结果。
Java web学习笔记--利用JDBC访问数据库_第3张图片
Java web学习笔记--利用JDBC访问数据库_第4张图片
二:做好准备,
创建数据库和表,在表中添加要用的内容
表的设计

三:下面开始完成
1,创建项目,并完成配置
Java web学习笔记--利用JDBC访问数据库_第5张图片

2,在web目录下创建login.jsp
Java web学习笔记--利用JDBC访问数据库_第6张图片
代码如下

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" %>
 
<html>
<head>
    <title>用户登录</title>
</head>
<body>
<h3 style="text-align: center">用户登录</h3>
<form action="do_login.jsp" method="post">
    <table border="1" cellpadding="10" style="margin: 0px auto">
        <tr>
            <td align="center">用户名</td>
            <td><input type="text" name="username"/></td>
        </tr>
        <tr>
            <td align="center">&nbsp;</td>
            <td><input type="password" name="password"/></td>
        </tr>
        <tr align="center">
            <td colspan="2">
                <input type="submit" value="登录"/>
                <input type="reset" value="重置"/>
            </td>
        </tr>
    </table>
</form>
<%
    String errMsg = (String) session.getAttribute("errMsg");
    if (errMsg != null) {
        out.println("

" + new String(errMsg.getBytes("ISO-8859-1"), "utf-8") + "

"
); } %> </body> </html>

3、在WEB-INF里创建lib目录,添加数据库驱动jar包
Java web学习笔记--利用JDBC访问数据库_第7张图片
Java web学习笔记--利用JDBC访问数据库_第8张图片
Java web学习笔记--利用JDBC访问数据库_第9张图片
Java web学习笔记--利用JDBC访问数据库_第10张图片
Java web学习笔记--利用JDBC访问数据库_第11张图片
4、在web目录里创建登录处理页面do_login.jsp
Java web学习笔记--利用JDBC访问数据库_第12张图片
Java web学习笔记--利用JDBC访问数据库_第13张图片Java web学习笔记--利用JDBC访问数据库_第14张图片Java web学习笔记--利用JDBC访问数据库_第15张图片在这个时候他的顶部会出现这些
Java web学习笔记--利用JDBC访问数据库_第16张图片
下面进行一些更改
Java web学习笔记--利用JDBC访问数据库_第17张图片
Java web学习笔记--利用JDBC访问数据库_第18张图片
Java web学习笔记--利用JDBC访问数据库_第19张图片
Java web学习笔记--利用JDBC访问数据库_第20张图片
Java web学习笔记--利用JDBC访问数据库_第21张图片
Java web学习笔记--利用JDBC访问数据库_第22张图片
最后代码:

<%@ page import="java.net.URLEncoder" %>
<%@ page import="java.sql.*" %>
<%
    //设置请求对象字符编码
    request.setCharacterEncoding("utf-8");
    //获取表单提交的数据
    String username = request.getParameter("username");
    String password = request.getParameter("password");

    //连接数据库的参数值
    final String DRIVER = "com.mysql.jdbc.Driver";
    final String URL = "jdbc:mysql://localhost:3306/azcdb";//"协议//主机地址:端口号/数据库名字"
    final String USER = "root";
    final String PASSWORD = "1";//MySQL密码

    try {
        //安装数据库驱动程序
        Class.forName(DRIVER);
        //获取数据库连接
        Connection conn = DriverManager.getConnection(URL + "?useUnicode=true&characterEncoding=utf8", USER, PASSWORD);
        //定义SQL字符串
        String strSQL = "select * from t_user where username = ? and password = ?";
        //创建预备语句对象
        PreparedStatement pstmt = conn.prepareStatement(strSQL);
        //设置占位符的值
        pstmt.setString(1,username);
        pstmt.setString(2,password);
        //执行SQL查询,返回结果集
        ResultSet rs = pstmt.executeQuery();
        //判断结果集是否有记录
        if (rs.next()) {
            //清楚session里可能存在的属性值
            if (session.getAttribute("errMsg") != null) {
                session.removeAttribute("errMsg");
            }
            //采用重定向,跳转到登陆成功界面
            response.sendRedirect("success.jsp?username=" + URLEncoder.encode(username, "utf-8"));
        } else {
            //设置session属性值
            session.setAttribute("errMsg","用户名或密码错误,请重新登陆!");
            //采用重定向,跳转到登陆界面
        }
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    } catch (SQLException e) {
        e.printStackTrace();
    }
    
%>

5、在web目录里创建登录成功页面success.jsp
Java web学习笔记--利用JDBC访问数据库_第23张图片
Java web学习笔记--利用JDBC访问数据库_第24张图片
6、在web.xml文件里将login.jsp设置为项目首页文件
Java web学习笔记--利用JDBC访问数据库_第25张图片
简单完成了
Java web学习笔记--利用JDBC访问数据库_第26张图片
进行完善
对登陆进行非空调研:
在login.jsp中添加函数
Java web学习笔记--利用JDBC访问数据库_第27张图片
在这里还无法进行调研,因为这里的获得内容是从ID里获得但是在上面却没有定义ID,所以对上面的还要进行小修改
Java web学习笔记--利用JDBC访问数据库_第28张图片
非空校验就完成了

你可能感兴趣的:(Java web学习笔记--利用JDBC访问数据库)