Java基于JDBC连接数据库及显示数据操作示例

Java基于JDBC连接数据库及显示数据操作示例

简介

JDBC(Java Database Connectivity)是一组用于操作数据库的接口。它允许Java应用程序与各种类型的关系型数据库进行通信并执行与数据库相关的操作(如查询、更新和删除数据等)。

在Java中,可以通过JDBC API建立Java应用程序与数据库之间的连接。本文将介绍如何使用JDBC API通过Java程序连接数据库、执行基本的数据查询和数据更新操作。

为了方便说明,我们将使用MySQL数据库和MySQL JDBC驱动程序来演示如何使用JDBC连接数据库及显示数据操作。

配置环境及准备工作

在开始编写Java连接数据库的程序之前,您需要做一些准备工作。

  1. 下载JDBC驱动程序

在使用JDBC连接到数据库之前,您需要先下载与您所使用的数据库相对应的JDBC驱动程序。

比如,如果您使用的是MySQL数据库,则应下载并安装MySQL JDBC驱动程序。可以从以下网址下载MySQL JDBC驱动程序:https://dev.mysql.com/downloads/connector/j/

  1. 准备数据库

在使用JDBC连接到数据库之前,您需要先准备一个数据库。

在本文的示例中,我们将使用MySQL数据库。可以通过以下步骤在本地创建一个MySQL数据库:

1) 安装MySQL数据库,具体步骤可以参考 https://dev.mysql.com/doc/refman/8.0/en/installing.html

2) 使用以下命令登录MySQL数据库:

mysql -u root -p

3) 创建一个数据库:

create database testdb;

在数据库中,我们将创建一个包含学生信息的表,并将用JDBC连接到这个表来执行一些基本的数据查询和更新操作。

表的列包括:

  • 学生ID
  • 学生姓名
  • 学生年龄

创建表的SQL语句:

CREATE TABLE students (
  id INT(11) NOT NULL AUTO_INCREMENT,
  name VARCHAR(255) DEFAULT NULL,
  age INT(11) DEFAULT NULL,
  PRIMARY KEY (id)
);

使用JDBC连接到MySQL数据库

在配置完成了环境和准备工作之后,下一步是编写Java程序连接到MySQL数据库。

在Java中,可以通过java.sql包中的类和接口来连接数据库,并对数据进行操作。

以下是一个示例Java程序,演示了如何使用JDBC连接到MySQL数据库,并执行一些基本的数据查询操作:

import java.sql.*;

public class JDBCTest {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
        String user = "root";
        String password = "root";
        try {
            Connection conn = DriverManager.getConnection(url,user,password);
            System.out.println("成功连接到数据库!");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("select * from students");
            while(rs.next()){
                System.out.println(rs.getString("id")+"\t"+rs.getString("name")+"\t"+rs.getString("age"));
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

在上面的示例中,首先指定数据库的URL、用户名和密码来建立与数据库的连接:

String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url,user,password);

其中,url是连接数据库的URL,指定了数据库所在的主机、端口号、数据库名、使用的时区,这些信息都是根据具体情况指定的。

接下来,创建一个Statement对象,使用executeQuery()方法执行SQL查询语句,并遍历ResultSet对象,输出查询结果:

Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from students");
while(rs.next()){
    System.out.println(rs.getString("id")+"\t"+rs.getString("name")+"\t"+rs.getString("age"));
}

在查询完数据之后,关闭ResultSet、Statement和Connection对象:

rs.close();
stmt.close();
conn.close();

数据修改操作示例

在本文的示例中,我们将使用MySQL数据库和MySQL JDBC驱动程序来演示如何使用JDBC进行基本的数据查询和数据更新操作。

下面是一个示例程序,演示如何使用JDBC连接到MySQL数据库,并执行一些基本的数据更新操作:

import java.sql.*;

public class JDBCTest {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
        String user = "root";
        String password = "root";
        try {
            Connection conn = DriverManager.getConnection(url,user,password);
            System.out.println("成功连接到数据库!");
            Statement stmt = conn.createStatement();
            // 插入数据
            int result = stmt.executeUpdate("insert into students (name, age) values('张三', 20);");
            System.out.println("插入了"+result+"条数据!");
            // 更新数据
            result = stmt.executeUpdate("update students set age=21 where name='张三'");
            System.out.println("更新了"+result+"条数据!");
            // 删除数据
            result = stmt.executeUpdate("delete from students where name='张三'");
            System.out.println("删除了"+result+"条数据!");
            stmt.close();
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

在上面的示例中,首先指定数据库的URL、用户名和密码来建立与数据库的连接:

String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url,user,password);

然后创建一个Statement对象,并使用executeUpdate()方法执行数据更新操作,包括插入、更新和删除数据:

Statement stmt = conn.createStatement();
// 插入数据
int result = stmt.executeUpdate("insert into students (name, age) values('张三', 20);");
System.out.println("插入了"+result+"条数据!");
// 更新数据
result = stmt.executeUpdate("update students set age=21 where name='张三'");
System.out.println("更新了"+result+"条数据!");
// 删除数据
result = stmt.executeUpdate("delete from students where name='张三'");
System.out.println("删除了"+result+"条数据!");

接下来,关闭Statement和Connection对象:

stmt.close();
conn.close();

执行以上代码后,数据库中的数据会被相应地插入、更新和删除。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java基于JDBC连接数据库及显示数据操作示例 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • Java内存泄漏的原因是什么?

    针对Java内存泄漏原因这一问题,我来详细讲解一下。 什么是Java内存泄漏? 首先,我们需要先了解什么是Java内存泄漏。Java内存泄漏指的是,虽然一些对象已经不再被程序所用,但是Java的垃圾回收器却无法回收这些对象的内存空间。这些没被回收的内存空间被占据,随着时间的推移内存空间将会越来越紧张,最终会导致程序的崩溃。 那么,Java内存泄漏的原因是什么…

    Java 2023年5月11日
    00
  • 详解hibernate双向多对多关联映射XML与注解版

    关于“详解hibernate双向多对多关联映射XML与注解版”的攻略,我将从以下几个方面进行详细讲解: 双向多对多关联映射的概念与要素 Hibernate双向多对多关联映射XML版的实现步骤及示例 Hibernate双向多对多关联映射注解版的实现步骤及示例 接下来我会一一进行详细讲解。 一、双向多对多关联映射的概念与要素 双向多对多关联映射,指的是两个实体类…

    Java 2023年5月19日
    00
  • java.Net.UnknownHostException异常处理问题解决

    Java.Net.UnknownHostException异常处理问题解决 当我们在使用Java进行网络编程时,经常会遇到一种异常:java.net.UnknownHostException,这是由于未知的主机名或者IP地址问题导致的,但有时候可能并不是我们的代码问题,而是网络环境问题,这就需要我们做一些异常处理。下面我们来详细讲解如何处理这个异常。 1. …

    Java 2023年5月27日
    00
  • JSP分页显示的实例代码

    JSP分页显示的实例代码需要以下步骤: 1. 准备数据 首先,我们需要准备一些数据,以便在JSP页面中分页显示。可以从数据库中查询相关数据,或者手动设置一些数据。 int pageSize = 5; //每页显示5条数据 int currentPage = 1; //当前页码 List<String> dataList = new ArrayLi…

    Java 2023年6月15日
    00
  • Spring Boot 整合 Apache Dubbo的示例代码

    这里给出一个完整的 Spring Boot 整合 Apache Dubbo 的示例代码攻略,包含以下内容: 环境准备 创建 Spring Boot 项目并添加依赖 配置 Dubbo 的注册中心和提供者 编写 Dubbo 的服务提供者 编写 Dubbo 的服务消费者 运行并测试示例代码 以下是具体的步骤: 1. 环境准备 首先,你需要安装并配置好以下环境: J…

    Java 2023年5月19日
    00
  • Java实战之简单的文件管理器

    Java实战之简单的文件管理器 概述 本篇攻略将介绍如何使用Java编写一个简单的文件管理器,主要实现以下功能: 显示指定目录下的文件和子目录 创建新目录 创建新文件 复制文件 移动文件 删除文件 开始 1. 建立项目 使用Eclipse或者IntelliJ IDEA等开发工具,建立一个新的Java项目。 2. 创建主类 创建一个名为FileManager的…

    Java 2023年5月20日
    00
  • 如何基于ssm框架实现springmvc拦截器

    基于SSM框架实现SpringMVC拦截器的攻略如下: 1. 创建SpringMVC拦截器类 首先,我们需要创建一个类来实现拦截器的功能。这个类需要实现SpringMVC框架提供的HandlerInterceptor接口。该接口中定义了三个方法,分别是preHandle、postHandle和afterCompletion,这些方法允许我们在请求被处理前、请…

    Java 2023年6月15日
    00
  • Springboot基础学习之初识SpringBoot

    下面我将为您详细讲解“Springboot基础学习之初识SpringBoot”的完整攻略。 概述 Spring Boot是一个基于Spring框架的快速开发Web应用的框架。它提供了自动配置、快速开发等特性,使开发者极大地提高了开发效率。当然,使用Spring Boot并不需要了解过多的Spring配置,非常适合初学者入门。 在这个攻略中,我们将带领您入门S…

    Java 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部