java的jdbc简单封装方法

下面是完整的“java的jdbc简单封装方法”的攻略。

背景介绍

Java连接数据库可以使用JDBC API实现。但是,JDBC API的一些操作非常繁琐,比如数据库连接的建立和关闭、一些查询操作和结果集的处理等。这些繁琐的操作增加了我们代码的复杂度。考虑此问题,我们可以对JDBC API进行简单封装来降低代码的复杂度。

简单封装实现

步骤1:引入依赖

我们需要引入 JDBC 驱动程序依赖,这里以 MySQL 为例。

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>版本号</version>
</dependency>

步骤2:定义封装类

定义一个类,封装JDBC操作,我们可以将代码中常用的操作封装到这个类中,这样就可以屏蔽掉之前提到的一些繁琐的操作。下面是一个简单的例子,我们封装了JDBC操作中的连接打开、关闭、查询和更新语句执行功能。

import java.sql.*;

public class JdbcUtils {
    private static final String URL = "jdbc:mysql://localhost:3306/test_db";
    private static final String USER_NAME = "root";
    private static final String PASSWORD = "123456";
    private static Connection conn;

    static {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection(URL, USER_NAME, PASSWORD);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static Connection getConnection() {
        return conn;
    }

    public static void close(Connection conn, PreparedStatement pstmt, ResultSet rs) {
        try {
            if (rs != null) {
                rs.close();
            }
            if (pstmt != null) {
                pstmt.close();
            }
            if (conn != null) {
                conn.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    public static ResultSet query(String sql, Object... params) throws SQLException {
        PreparedStatement pstmt = conn.prepareStatement(sql);
        if (params != null) {
            for (int i = 0; i < params.length; i++) {
                pstmt.setObject(i + 1, params[i]);
            }
        }
        return pstmt.executeQuery();
    }

    public static int update(String sql, Object... params) throws SQLException {
        PreparedStatement pstmt = conn.prepareStatement(sql);
        if (params != null) {
            for (int i = 0; i < params.length; i++) {
                pstmt.setObject(i + 1, params[i]);
            }
        }
        return pstmt.executeUpdate();
    }
}

步骤3:使用封装类

在需要使用JDBC操作时,只需要调用封装类中的方法就可以了。下面是两个简单的例子,一个是查询操作,另一个是更新操作。

查询

public class TestQuery {
    public static void main(String[] args) {
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        try {
            conn = JdbcUtils.getConnection();
            String sql = "SELECT * FROM users WHERE username = ?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, "Tom");
            rs = JdbcUtils.query(sql, "Tom");
            while (rs.next()) {
                System.out.println(rs.getString("username") + " " + rs.getString("password"));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            JdbcUtils.close(conn, pstmt, rs);
        }
    }
}

更新

public class TestUpdate {
    public static void main(String[] args) {
        Connection conn = null;
        PreparedStatement pstmt = null;
        try {
            conn = JdbcUtils.getConnection();
            String sql = "UPDATE users SET password = ? WHERE username = ?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, "123456");
            pstmt.setString(2, "Tom");
            int result = JdbcUtils.update(sql, "123456", "Tom");
            System.out.println(result);
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            JdbcUtils.close(conn, pstmt, null);
        }
    }
}

总结

本文介绍了如何利用封装技术来简化 JDBC API 的使用,封装后的代码更加简洁易读,可以提高开发效率。通过以上示例的讲解,相信大家已经掌握了 jdbc 的简单封装方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java的jdbc简单封装方法 - Python技术站

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

相关文章

  • jsp是什么文件 如何打开jsp格式的文件

    JSP(JavaServer Pages)是一种Java动态网页技术。它允许开发人员将动态内容嵌入静态网页中,从而实现更多的交互功能。本攻略将讲解如何打开JSP格式的文件。 JSP是什么文件 JSP文件是一种基于文本的文件格式,使用Java编程语言编写,通常用于构建动态Web网站和Web应用程序。JSP文件包含HTML代码、Java代码和JSP标记,可以在W…

    Java 2023年6月15日
    00
  • Spring populateBean属性赋值和自动注入

    Spring框架是一款高效的Java开发框架,其优秀的依赖注入机制使得程序员们可以更加快速和高效的进行开发。其中,populateBean属性赋值和自动注入是Spring框架中最为常见的两种方式,下面将对这两种方式进行详细的讲解。 1. populateBean属性赋值 populateBean属性赋值是Spring框架中最为常用的一种方式,其作用是将数据传…

    Java 2023年6月15日
    00
  • MyBatis源码解析之Transaction事务模块

    MyBatis源码解析之Transaction事务模块 一、概述 MyBatis是一款优秀的持久层框架,它支持事务控制,能够帮助开发者方便地管理数据的事务。MyBatis的事务管理模块主要由Transaction接口、TransactionFactory接口、TransactionIsolationLevel枚举和JdbcTransaction、Manage…

    Java 2023年6月16日
    00
  • Java正则表达式API Matcher类方法

    接下来我会为你详细讲解Java正则表达式API Matcher类方法的完整攻略。 什么是Java正则表达式? Java正则表达式是一种文本模式,用于匹配文本中的字符序列。它们通常用于搜索、替换和验证字符串。Java正则表达式由Pattern类表示,它有一个compile()方法,用于将正则表达式编译为一个Pattern对象。Matcher类提供了对字符串的匹…

    Java 2023年5月27日
    00
  • java中String的常见用法总结

    下面我来详细讲解一下Java中String的常见用法总结。 Java中String的常见用法总结 1. 字符串创建 在Java中,可以通过以下三种方式创建字符串: 直接使用字符串字面量创建,例如: java String str1 = “hello world”; 使用String类的构造方法创建: java String str2 = new String…

    Java 2023年5月27日
    00
  • Java API方式调用Kafka各种协议的方法

    Java API方式调用Kafka的方法主要是通过Kafka提供的各种API来实现。其中,Kafka提供了多种协议,包括生产、消费、管理、复制等,下面我们逐一介绍如何使用Java API来调用它们。 一、生产消息 生产消息是Kafka最基础的功能之一,以下是使用Java API来生产消息的步骤: 1.导入相关依赖 <dependency> &lt…

    Java 2023年5月20日
    00
  • Spring五大类注解读取存储Bean对象的方法

    下面是详细的讲解“Spring五大类注解读取存储Bean对象的方法”的完整攻略。 一、概述 Spring 是一种非常受欢迎的 Java 开发框架,它提供了一套非常完整的依赖注入机制,使得开发者可以轻松地使用 Spring 来管理 Bean 对象。而 Spring 的 Bean 对象的创建方式就有五大类注解方式,它们分别是:@Component、@Reposi…

    Java 2023年5月26日
    00
  • java实现支付宝支付接口的调用

    下面是详细的讲解”Java实现支付宝支付接口的调用”的完整攻略。 步骤一:申请支付宝开发者账号 首先,你需要申请一个支付宝开发者账号。如果你已经有一个支付宝账号,可以通过这个账号登录支付宝开发平台https://openhome.alipay.com/platform/home.htm。 步骤二:创建应用并获取应用的app_id、密钥等信息 在开发者中心中,…

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