java连接数据库增、删、改、查工具类

Java连接数据库是Java开发中的重要步骤之一,数据库增删改查操作则是开发中经常用到的。在Java中,可以通过JDBC来实现对数据库的增、删、改、查操作。为了方便开发人员对数据库的操作,我们可以封装一个工具类。

编写数据库连接工具类

在Java中,我们可以使用java.sql包中提供的工具类来连接数据库。首先需要在代码中加载数据库的驱动类,比如MySQL的驱动类是com.mysql.cj.jdbc.Driver。我们可以使用Class.forName()方法来加载驱动类,例如:

Class.forName("com.mysql.cj.jdbc.Driver");

接着,我们需要创建数据库连接,使用DriverManager.getConnection()方法。例如:

String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);

上述代码中,我们指定了连接的数据库的URL、用户名和密码。其中,URL可以在连接MySQL时指定相应的参数,比如useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai,用于指定编码集和时区。

我们可以将上述代码封装到一个工具类中,例如DBUtil类:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DBUtil {

    private static final String URL = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai";
    private static final String USER = "root";
    private static final String PASSWORD = "123456";

    public static Connection getConnection() throws SQLException, ClassNotFoundException {
        Class.forName("com.mysql.cj.jdbc.Driver");
        return DriverManager.getConnection(URL, USER, PASSWORD);
    }

}

数据库增、删、改、查操作的代码示例

数据库插入操作

数据库插入操作可以使用PreparedStatement接口来完成。例如,我们可以使用如下代码来向数据库中插入一条记录:

String sql = "INSERT INTO `user` (`name`, `age`, `email`) VALUES (?, ?, ?)";
try (Connection conn = DBUtil.getConnection();
     PreparedStatement pstmt = conn.prepareStatement(sql)) {
    pstmt.setString(1, "张三");
    pstmt.setInt(2, 18);
    pstmt.setString(3, "zhangsan@test.com");
    pstmt.executeUpdate();
}

上述代码中,我们首先创建了一条SQL语句,然后使用PreparedStatement接口来预编译SQL语句。在编写SQL语句时,使用?来代替需要传入的参数。执行完成后,我们使用executeUpdate()方法来执行SQL语句,如果插入成功,则返回1。

数据库删除操作

数据库删除操作可以使用PreparedStatement接口来完成。例如,我们可以使用如下代码来删除数据库中的一条记录:

String sql = "DELETE FROM `user` WHERE `id`=?";
try (Connection conn = DBUtil.getConnection();
     PreparedStatement pstmt = conn.prepareStatement(sql)) {
    pstmt.setInt(1, 1);
    pstmt.executeUpdate();
}

上述代码中,我们首先创建了一条SQL语句,然后使用PreparedStatement接口来预编译SQL语句。在编写SQL语句时,使用?来代替需要传入的参数。执行完成后,我们使用executeUpdate()方法来执行SQL语句,如果删除成功,则返回1。

数据库修改操作

数据库修改操作可以使用PreparedStatement接口来完成。例如,我们可以使用如下代码来修改数据库中的一条记录:

String sql = "UPDATE `user` SET `age`=? WHERE `id`=?";
try (Connection conn = DBUtil.getConnection();
     PreparedStatement pstmt = conn.prepareStatement(sql)) {
    pstmt.setInt(1, 20);
    pstmt.setInt(2, 1);
    pstmt.executeUpdate();
}

上述代码中,我们首先创建了一条SQL语句,然后使用PreparedStatement接口来预编译SQL语句。在编写SQL语句时,使用?来代替需要传入的参数。执行完成后,我们使用executeUpdate()方法来执行SQL语句,如果修改成功,则返回1。

数据库查询操作

数据库查询操作可以使用Statement接口或者PreparedStatement接口来完成。例如,我们可以使用如下代码来查询数据库中的一条记录:

String sql = "SELECT * FROM `user` WHERE `id`=?";
try (Connection conn = DBUtil.getConnection();
     PreparedStatement pstmt = conn.prepareStatement(sql)) {
    pstmt.setInt(1, 1);
    try (ResultSet rs = pstmt.executeQuery()) {
        while (rs.next()) {
            int id = rs.getInt("id");
            String name = rs.getString("name");
            int age = rs.getInt("age");
            String email = rs.getString("email");
            System.out.println(id + ", " + name + ", " + age + ", " + email);
        }
    }
}

上述代码中,我们首先创建了一条SQL语句,然后使用PreparedStatement接口来预编译SQL语句。在编写SQL语句时,使用?来代替需要传入的参数。执行完成后,我们使用executeQuery()方法来执行SQL语句,并返回一个ResultSet对象。ResultSet对象中包含了查询出来的数据记录。我们可以使用rs.next()方法来遍历ResultSet对象中的数据记录,并通过列名来获取相应的数据。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java连接数据库增、删、改、查工具类 - Python技术站

(0)
上一篇 2023年6月16日
下一篇 2023年6月16日

相关文章

  • Java实现登录和注册案例

    下面我将为您详细讲解Java实现登录和注册案例的完整攻略。我们分为以下几个步骤进行讲解: 搭建开发环境 创建用户实体类 创建用户数据访问对象(DAO) 创建用户服务(Service) 创建控制器(Controller) 配置数据库连接 创建用户表 实现注册功能 实现登录功能 接下来,我将为您详细讲解每一步的具体操作流程。 每个开发者需要有一台配有Java开发…

    Java 2023年5月19日
    00
  • Java花式解决’分割回文串 ii’问题详解

    对于Java花式解决’分割回文串 ii’问题详解,我将从以下几个方面进行讲解: 问题描述 解题思路 实现代码 示例说明 1. 问题描述 给定一个字符串s,将s分割成若干个非空回文子串,使得每个子串都是回文串。求最少需要分割几次。 2. 解题思路 本题可以使用动态规划来求解。定义dp[i]表示前缀s[0…i]最少需要切几次,才能满足每个子串都是回文串。那么…

    Java 2023年5月27日
    00
  • java实现Composite组合模式的实例代码

    下面我将为你讲解Java实现Composite组合模式的实例代码完整攻略。在完成该过程前,我先将Composite组合模式的一些基本概念进行简单介绍。 Composite组合模式是一种结构化设计模式,用于将对象组合成树状结构,以表示“部分-整体”的层次关系。该模式使得客户端能够使用统一的接口处理单个对象以及对象组合,从而将单个对象与组合对象视为等同的对象。 …

    Java 2023年5月19日
    00
  • Java设计模块系列之书店管理系统单机版(二)

    我来详细讲解一下“Java设计模块系列之书店管理系统单机版(二)”的完整攻略。 首先,这篇攻略是一篇关于书店管理系统的设计,主要包括从需求分析到具体实现的全过程。在设计的过程中,作者使用了MVC模式,分为Model、View和Controller三个部分,实现了对数据的管理。同时,作者还介绍了一些设计模式的应用,如装饰器模式、工厂模式和适配器模式等。 接着,…

    Java 2023年5月24日
    00
  • Spring Boot 日志配置方法(超详细)

    Spring Boot日志配置方法(超详细) Spring Boot是一个非常流行的Java开发框架,它提供了多种日志框架,包括Logback、Log4j2、Java Util Logging等。本文将详细介绍Spring Boot日志配置方法,包括配置文件、注解、代码等。 1. 配置文件 Spring Boot的日志配置文件是application.pro…

    Java 2023年5月14日
    00
  • 如何测试Spring MVC应用

    以下是关于“如何测试Spring MVC应用”的完整攻略,其中包含两个示例。 1. 前言 Spring MVC是一种基于Java的Web框架,它提供了一种灵活的方式来开发Web应用程序。在开发Spring MVC应用程序时,测试是非常重要的一部分。本攻略将详细讲解如何测试Spring MVC应用程序。 2. 测试Spring MVC应用程序的方法 Sprin…

    Java 2023年5月16日
    00
  • SpringBoot创建并简单使用的实现

    下面我会给出一份详细的Spring Boot创建并简单使用的攻略,包含以下几个部分: 环境准备 创建Spring Boot项目 使用Spring Boot 示例1:创建RESTful API 示例2:集成Thymeleaf模板引擎 环境准备 在开始创建Spring Boot项目之前,需要进行相关的环境准备。首先,需要确保你已经安装了Java和Maven,在安…

    Java 2023年5月15日
    00
  • Android自定义view制作绚丽的验证码

    感谢您对Android自定义View制作绚丽验证码的关注,下面是我对此的完整攻略。 1. 前言 自定义View是Android很重要的一部分,因为它可以帮助我们创建最适合我们业务逻辑的用户界面。这个教程将向您展示如何制作一个绚丽的验证码。首先,我们将介绍带有随机数字和字母的简单验证码,然后我们将介绍如何使用自定义View类创建更复杂的验证码。 2. 制作带有…

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