JSP连接MySQL数据库详细步骤

目录
  • JSP中的MySQL驱动程序配置
  • MySQL中创建表
  • JSP中SELECT操作
  • JavaBean 定义与使用

动态Web程序运行在Web容器之中,利用Web容器可以使用JDBC技术来实现数据库数据的CRUD操作,将数据表中的数据取出并结合JSP动态生成HTML页面进行显示。

JSP中的MySQL驱动程序配置

本文开发使用的是MySQL数据库,如果要想使用MySQL数据库,则一定要在Tomcat中进行MySQL驱动程序的配置。这个配置可以考虑将获取到的MySQL的程序包 jar包 保存到你本地的Tomcat文件夹中的 lib 文件目录中。

在Tomcat或者是项目之中所有的XML文件配置之后必须重新启动Tomcat才可以实现新的配置项加载,如果要在Tomcat中增加新的程序包,也必须重新启动后才能加载。

注意:

你可以下载官网提供的 jar 包:

MySQL 5 版本:mysql-connector-java-5.1.0-bin.jar

MySQL 8 版本:mysql-connector-java-8.0.19.jar

下载后把 mysql-connector-java-<对应版本>-bin.jar 拷贝到 tomcat 下 lib 目录。

MySQL 8.0 以上版本的数据库连接有所不同:

  • com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver。
  • MySQL 8.0 以上版本不需要建立 SSL 连接的,需要显示关闭。
  • 最后还需要设置 CST。

MySQL中创建表

既然要进行数据的开发操作,则首先一定要进行数据库的创建,本次创建一张手机信息表,并且配置好相应的测试数据。

范例:创建手机信息表

CREATE TABLE phone(
`pid` INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`brand` VARCHAR(20) NOT NULL,
`type` VARCHAR(20) NOT NULL,
`birthday` DATE NOT NULL,
`price` DOUBLE NOT NULL,
`color` VARCHAR(20) NOT NULL,
`card` VARCHAR(20) NOT NULL UNIQUE
)

插入一些数据:

INSERT INTO phone VALUES(1001,'华为','P30','2018-10-10',3500,'白色','HB1214512412');
INSERT INTO phone VALUES(1002,'小米','10Plus','2020-02-02',3222,'蓝色','XM5765424335');
INSERT INTO phone VALUES(1003,'荣耀','30Pro','2020-08-22',2888,'白色','RY4815645687');

数据表显示如下:

JSP中SELECT操作

如果要想使用JDBC实现数据表中的数据查询,那么肯定要通过PreparedStatement接口实现查询操作,本次仅仅是实现查询全部数据的需要。

范例:查询数据表所有数据

<%@ page contentType="text/html;charset=UTF-8" language="java" %>  <%-- 定义页面中文显示编码 --%>
<%@ page import="java.sql.*" %>  <%-- 导入开发包 --%>
<html>
<head>
    <title>$Title$</title>
</head>
<body>
<%!
    public static final String DBDRIVER="com.mysql.jdbc.Driver";//驱动程序
    public static final String DBURL="jdbc:mysql://localhost:3306/java221804";//连接地址
    public static final String USER="root";//用户名
    public static final String PASSWORD="huanghuang";//密码
%>
<%
    String sql="select * from phone;";//SQL查询语句
    Class.forName(DBDRIVER);//加载驱动程序
    Connection conn=DriverManager.getConnection(DBURL,USER,PASSWORD);//连接数据库
    PreparedStatement pstmt=conn.prepareStatement(sql);//操作PreparedStatement对象
    ResultSet rs=pstmt.executeQuery();//执行查询,并存入ResultSet结果集中
%>
<table border="1" width="100%">
    <thead><tr><td>编号</td><td>品牌</td><td>型号</td><td>出厂日期</td><td>价格</td><td>颜色</td><td>手机编码</td></tr></thead>
    <tbody>
    <%
        while (rs.next()){//从ResultSet结果集中循环获取数据
            int pid=rs.getInt(1);
            String brand=rs.getString(2);
            String type=rs.getString(3);
            Date birthday=rs.getDate(4);
            double price=rs.getDouble(5);
            String color=rs.getString(6);
            String card=rs.getString(7);
     %>
    <tr>
        <td><%=pid%></td>
        <td><%=brand%></td>
        <td><%=type%></td>
        <td><%=birthday%></td>
        <td><%=price%></td>
        <td><%=color%></td>
        <td><%=card%></td>
    </tr>
    <%
        }
    %>
    </tbody>
</table>
<%
    //关闭连接,如果不关闭就再也关闭不了,除非重新启动Tomcat
    conn.close();
%>
</body>
</html>

本程序在JSP中实现了MySQL数据库的链接,随后利用PreparedStatement语句实现了 phone 表的查询,所有查询的记录将利用循环拼凑为HTML表格元素进行展示。

执行结果显示如下:

实际上看到以上程序代码执行后,就可以非常清楚的发现,整个JavaWEB开发和Java的开发基本上是没有啥太大去别的,都是编写Java代码,只要你Java基本功扎实,那么这种程序实际上编写起来就非常容易了。

JavaBean 定义与使用

为了提高Java程序代码的可重用性,往往会将一些重复执行的代码封装在类结构之中,而这样的类也被称为JavaBean。在IDEA中的Web开发中,创建此封装类的位置结构图如下:

第一步:创建db.properties文件

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/java221804
username=root
password=huanghuang

第二步:创建数据库封装类——DBUtils类

package cn.lqgx.insert;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
public class DBUtils {
    private static final Properties PROPERTIES =new Properties();
    static{
        InputStream is = DBUtils.class.getResourceAsStream("/db.properties");
        try {
            PROPERTIES.load(is);
            //1、注册驱动
            Class.forName(PROPERTIES.getProperty("driver"));
        } catch (IOException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    // 2、获取连接方法
    public static Connection getConnection(){
        Connection connection = null;
        //2、获取连接对象
        try {
            connection=DriverManager.getConnection(PROPERTIES.getProperty("url"), PROPERTIES.getProperty("username"), PROPERTIES.getProperty("password"));
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return connection;
    }

    // 3、释放资源方法
    public static void closeAll(ResultSet resultSet, Statement statement,
                                Connection connection) {
        try {
            if (resultSet != null) {
                resultSet.close();
            }
            if(statement!=null){
                statement.close();
            }
            if(connection!=null){
                connection.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

最后通过JSP调用JavaBean数据库操作封装类

范例:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>  <%-- 定义页面中文显示编码 --%>
<%@ page import="java.sql.*" %>  <%-- 导入开发包 --%>
<%@ page import="cn.lqgx.insert.DBUtils" %>  <%-- 导入自定义的JavaBean数据库操作封装类 --%>
<html>
<head>
  <title>$Title$</title>
</head>
<body>

<%
  String sql = "select * from phone;";//SQL查询语句
  Connection conn = DBUtils.getConnection();//连接数据库
  PreparedStatement pstmt1 = conn.prepareStatement(sql);//操作PreparedStatement对象
  ResultSet rs = pstmt1.executeQuery();//执行查询,并存入ResultSet结果集中
%>
<table border="1" width="100%">
  <thead>
  <tr>
    <td>编号</td>
    <td>品牌</td>
    <td>型号</td>
    <td>出厂日期</td>
    <td>价格</td>
    <td>颜色</td>
    <td>手机编码</td>
  </tr>
  </thead>
  <tbody>
  <%
      int pid = rs.getInt(1);
      String brand = rs.getString(2);
      String type = rs.getString(3);
      Date birthday = rs.getDate(4);
      double price = rs.getDouble(5);
      String color = rs.getString(6);
      String card = rs.getString(7);

  %>
  <tr>
    <td><%=pid%>
    </td>
    <td><%=brand%>
    </td>
    <td><%=type%>
    </td>
    <td><%=birthday%>
    </td>
    <td><%=price%>
    </td>
    <td><%=color%>
    </td>
    <td><%=card%>
    </td>
  </tr>
  <%
    }
  %>
  </tbody>
</table>
<%
  //关闭连接,如果不关闭就再也关闭不了,除非重新启动Tomcat
  conn.close();
%>
</body>
</html>

程序执行结果如下:

本程序直接通过开发的DBUTils工具类获取了数据库的连接对象,这样就相当于将所有的数据库连接与关闭处理封装在了一个JavaBean中,以实现代码的可重用性,在调用时只需要通过page指令导入相关的程序类即可实现类中方法的调用。

到此这篇关于JSP连接MySQL数据库详细步骤的文章就介绍到这了,更多相关JSP连接MySQL数据库内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Java连接MySQL数据库实例

    首先说明,由于是8版本的数据库,所以配置类的写法上与5版本的有所区别,需要注意,同时用idea或eclipse时需要导入jar包,jar包的下载链接: https://dev.mysql.com/get/archives/mysql-connector-java-8.0/mysql-connector-java-8.0.28.zip 如果想要下载8版本不同的jar包只需要修改8.0.28为指定版本即可. idea导入jar包的方法如下: 然后是代码部分,首先先建表: CREATE TABLE `

  • 详解Java使用JDBC连接MySQL数据库

    一:什么是数据库,为什么要有数据库? 数据,数据库,数据库管理系统和数据库系统是与数据库技术密切相关的四个基本概念. 数据库相信大家都耳熟能详了,其实数据库顾名思义就是存放数据的仓库,只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的~ 可能有朋友就要打断我施法了,停停停,我们Java程序猿在IDEA里面和控制台你侬我侬,没有对象new个对象存储在内存JVM的堆上就行了,学数据库干啥啊? 这时候我们就需要了解到:内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运

  • java基于jdbc连接mysql数据库功能实例详解

    本文实例讲述了java基于jdbc连接mysql数据库的方法.分享给大家供大家参考,具体如下: 一.JDBC简介 Java 数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法.JDBC也是Sun Microsystems的商标.它JDBC是面向关系型数据库的. 1.JDBC架构: JDBC API支持两层和三层处理模型进行数据库访问,但在一般的JDBC体系结构由

  • MySQL数据库 JDBC 编程(Java 连接 MySQL)

    目录 1. 数据库编程的基础条件 2. Java 的数据库编程:JDBC 3. JDBC 访问数据库的层次结构 4. MySQL 数据库操作介绍 5. MySQL 驱动包的下载及添加到项目 6. JDBC 使用步骤 6.1 创建数据库源,连接 Connection 6.2 构造 SQL 语句,为执行的操作做准备 6.3 执行 SQL,并处理结果集 6.4 释放资源 6.5 JDBC 编程模板 7. JDBC 常用接口和类 7.1 DataSource 和 MysqlDataSource 7.2

  • Java连接mysql数据库代码实例程序

    这篇文章主要介绍了java连接mysql数据库代码实例程序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 用java 联接mysql的实例 在联接的时候,先确保本机安装了mysql或者服务器是安装了mysql import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; imp

  • Java连接Mysql数据库详细代码实例

    这篇文章主要介绍了Java连接Mysql数据库详细代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 隔了一段时间没连过数据库,代码都忘记了,网上看了下挺乱的,还是自己记录下好.这里的代码主要是连接数据库和显示数据,没有具体的数据库操作. 首先第一步当然是导入mysql的jar包,在java文件中创一个新的文件夹,我这里命名为lib,然后把jar包复制进去 然后右键jar包,选择build path将包添加进库中 之后就是代码实现了 pac

  • Java使用jdbc连接MySQL数据库实例分析

    本文实例讲述了Java使用jdbc连接MySQL数据库的方法.分享给大家供大家参考,具体如下: 使用jdbc连接数据库: 可以直接在方法中定义url.user.psd等信息,也可以读取配置文件,但是在web项目中肯定是要使用第二种方式的,为了统一,只介绍第二种方式. 步骤 1.创建配置文件db.properties 无论是eclipse还是myeclipse,在工程下右键->new->file,以properties为后缀名就好了. 配置文件内容: #连接数据库的url,如果主机地址是loca

  • java连接MySQL数据库的代码

    本文实例为大家分享了java连接MySQL数据库的具体代码,供大家参考,具体内容如下 package connect; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; public class Connect { //驱动程序位置 public static final String DBDRIVER="com.mysql.jdbc.Driver"; //连接地址

  • JSP连接MySQL数据库详细步骤

    目录 JSP中的MySQL驱动程序配置 MySQL中创建表 JSP中SELECT操作 JavaBean 定义与使用 动态Web程序运行在Web容器之中,利用Web容器可以使用JDBC技术来实现数据库数据的CRUD操作,将数据表中的数据取出并结合JSP动态生成HTML页面进行显示. JSP中的MySQL驱动程序配置 本文开发使用的是MySQL数据库,如果要想使用MySQL数据库,则一定要在Tomcat中进行MySQL驱动程序的配置.这个配置可以考虑将获取到的MySQL的程序包 jar包 保存到你本

  • java连接mysql数据库详细步骤解析

    第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar 第二步:导入下载的JDBC驱动包,我用的是myeclipse,选中自己要导包的项目,右   击选中propertise,再选JavaBuild Path, 右边会出现libreries,点进去,再点Add External JARs  然后再找到你要导入的驱动包.完了之后再点Order andExport,下面再选中你导入的包. 第三步:加载驱动程序:Class.forName(

  • 使用Idea连接MySQL的详细步骤总结

    一.创建普通java工程 创建工程跳过了,普通的java工程 二.导入mysql的jar包 mysql jar包下载地址 我使用的是5.1.15版本 创建目录,下载的jar包复制到目录里面(因为这个是普通的java工程,导入jar包方式比较麻烦) 完成这步jar包是不会依赖的.需要添加到工程,选中lib目录,找到下图的选项 new一个java类,名字随便起 部署工程完成,开始写代码 三.详细代码 1.注册mysql数据库程序 代码如下: Class.forName("com.mysql.jdbc

  • Linux上通过binlog文件恢复mysql数据库详细步骤

     一.binlog 介绍 服务器的二进制日志记录着该数据库的所有增删改的操作日志(前提是要在自己的服务器上开启binlog),还包括了这些操作的执行时间.为了显示这些二进制内容,我们可以使用mysqlbinlog命令来查看. 用途1:主从同步 用途2:恢复数据库(也是线上出现一次数据库文件丢失后,才对这个有所了解并学习的) mysqlbinlog命令用法:shell> mysqlbinlog [options] log_file ... <!--[if !supportLists]-->

  • asp连接mysql数据库详细实现代码

    想要asp能连接mysql数据库需要安装MySQL ODBC 3.51 驱动 http://www.jb51.net/softs/19910.html我们先看下面这段代码 复制代码 代码如下: set conn = server.createobject("adodb.connection") Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;DATABASE=Shops;USER=root;PASSWOR

  • 用Eclipse连接MySQL数据库的步骤

    我的环境:MySQL:mysql-essential-5.1.51-win32 安装之前的准备工作: jdbc驱动 Eclipse:任意版本,免费的,可以百度的到. 1.MySQL安装 下面来创建一个数据: mysql>CREATE DATABASE test; //创建一个数据库 mysql>use test; //指定test为当前要操作的数据库 mysql>CREATE TABLE user (name VARCHAR(20),password VARCHAR(20)); //创建

  • IntelliJ IDEA连接MySQL数据库详细图解

    在网上down了个web项目,在 IntelliJ IDEA 这个编辑器里面跑起来,但是发现domain文件夹下的xml文件都报如下的红色提示错误: Cannot resolve table 'jrun_access' less... (Ctrl+F1) This inspection lets you spot the following problems that might occur in XML descriptors that define Hibernate mappings: R

  • pycharm中连接mysql数据库的步骤详解

    前言 最近在新的环境配置pycharm的项目时候,发现pycharm不能连接到mysql数据库.由于安了java环境但是还没配置相关的库,并且jetbrains家的IDE一般都是java写的,于是猜想可能是java缺少mysql的驱动.所以就动手起来,总算是成功了,所以将过程分享出来给大家,需要的朋友们一起来学习学习. 一.先确保python能正常连接到数据库 可以如下图测试,如果无报错,说明正常连接到了数据库 如果有报错,可能是缺少MySQLdb包 先去下载MYSQLdb 官方下载:MySQL

  • Linux远程部署MySQL数据库详细步骤

    Linux远程部署MySQL数据库,供大家参考,具体内容如下 1.0 安装 yum install lrzsz -y 命令(导入外界压缩包插件(已下载无视即可)) 1.1 将mysql压缩包拷贝到 /usr/local 文件目录下进行解压: 1.2 将导入的Mysql压缩包进行解压,输入:tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz命令 1.3 解压完成后,将解压后的文件更改名字为:mysql 输入:mv mysql-5.7.28-li

随机推荐