封装jdbc工具类增删改查_jdbc工具类

封装jdbc工具类增删改查_jdbc工具类
封装JDBC工具类 在实际JDBC的使用中,存在着大量的重复代码:例如连接数据库、关闭数据库等这些操作! 我们需要把传统的JDBC代码进行重构,抽取出通用的…

封装JDBC工具类[数据库教程]

封装JDBC工具类

  • 在实际JDBC的使用中,存在着大量的重复代码:例如连接数据库、关闭数据库等这些操作!
  • 我们需要把传统的JDBC代码进行重构,抽取出通用的JDBC工具类!以后连接的任何数据库、释放资源都可以使用这个工具类

工具类核心思想

重用性方案

  • 封装获取连接、释放资源两个方法
    • 提供public static Connection getConnection()方法。
    • 提供public static void closeAll(Connection connection,Statement statement,ResultSet resultSet)方法。

跨平台方案

  • 定义public static final Properties properties=``new Properties();//读取配置文件的Map

跨平台实现

src目录下新建db.db.properties文件

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/jdbc
username=root
password=root

工具类代码:

package com.qf.jdbc2;

import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;

public class DBUtils {
    private static final Properties PROPERTIES = new Properties();//存储配置文件的Map

    static {
        try {
            //选择读取文件的路径
            InputStream is = DBUtils.class.getResourceAsStream("/db.properties");
            PROPERTIES.load(is);
            Class.forName(PROPERTIES.getProperty("driver"));
        } catch (IOException | ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    //连接数据库
    public static Connection getConnection() {
        Connection connection = null;
        try {
            connection = DriverManager.getConnection(PROPERTIES.getProperty("url"),
                    PROPERTIES.getProperty("username"),
                    PROPERTIES.getProperty("password"));
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        return connection;
    }

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

封装JDBC工具类

原文:https://www.cnblogs.com/techoc/p/13630151.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6692.html

(0)
上一篇 2023-04-05
下一篇 2023-04-05

相关推荐

  • 事务和触发器_视图触发器存储过程必要性

    事务和触发器_视图触发器存储过程必要性MySQL视图 一.视图的概念 1.什么是视图: SQL语句的执行结果是一张虚拟表 我们可以基于该表做其他操作如果这张虚拟表需要频繁使用 那么为了方便可以将虚拟表保存起来 保存起来之后就称之为&quo

    2023-06-01
    133
  • Python和Golang实现操作系统文件的读写和处理

    Python和Golang实现操作系统文件的读写和处理strong1. 文件读写/strong

    2024-03-28
    76
  • docker搭建python开发环境_2020启航

    docker搭建python开发环境_2020启航【目录】 一 系统数据库 二 创建数据库 三 数据库相关操作 一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限

    2023-02-25
    163
  • MySQL学习笔记(20):优化MySQL Server

    MySQL学习笔记(20):优化MySQL Server本文更新于2020-04-05,使用MySQL 5.7,操作系统为Deepin 15.4。 MySQL体系结构 MySQL实例由一组后台线程、一些内存块和若干服务线程组成。 后台线程包括: 主线程:主

    2023-03-23
    159
  • mysql系列(十)——Mysql常见的工具

    mysql系列(十)——Mysql常见的工具一、压力测试工具——【mysqlslap】 二、 数据库表物理结构修改工具——【pt-online-schema-change】 三、慢查询分析工具—— 【mysqldumpslow】 四、慢查询分…

    2023-03-20
    153
  • 使用pytesseract进行OCR文字识别

    使用pytesseract进行OCR文字识别在现代社会中,数字化技术的发展使得人们变得更加依赖于电子设备。电子设备和软件可以协助人们进行工作和生活,但有时文字是从纸质文件或图片中传递而来的。当需要处理这些文件的时候,OCR(光学字符识别)变得非常有用。OCR技术可以帮助电脑将图片中的文字识别并转为可编辑或其他格式的文本,同时也可以帮助人们对纸质文件进行数字化处理。Python作为一门流行的编程语言,提供了几种OCR系统,其中最受欢迎的就是Pytesseract。

    2024-06-29
    44
  • 优化循环流程:Python中的continue和break使用技巧

    优化循环流程:Python中的continue和break使用技巧在Python的循环结构中,continue和break是两个非常常用的关键字。continue用于跳出本次循环,进入下一次循环;而break用于直接跳出整个循环,继续执行其余的代码。这两个关键字都可以优化循环流程,提高代码效率。

    2024-01-10
    101
  • Oracle 12c RAC 安装文档「终于解决」

    Oracle 12c RAC 安装文档「终于解决」博客园 首页 新随笔 联系 管理 订阅 随笔- 91 文章- 0 评论- 11 Oracle 12c RAC 安装文档 参考文档: https://docs.oracle.com/en/databa…

    2023-03-19
    147

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注