首页 > 其他分享 >JDBC之封装工具类(跨平台方案)

JDBC之封装工具类(跨平台方案)

时间:2023-01-29 17:03:08浏览次数:30  
标签:JDBC 封装 配置文件 java 跨平台 connection import getProperty PROPERTIES

JDBC之封装工具类(跨平台方案)

把工具类的配置信息存储在配置文件中,需要修改用户信息时,改配置文件即可

在src新建一个resouse配置文件,把工具类中的配置信息写入

完善后的工具类:

package com.qf.JDBC2;

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

public class DBUtils {
    //1.提供一个私有的静态常量,存储配置文件的map
    private  static final Properties PROPERTIES = new Properties();
    static {
        //2.拿到一个字节流,通过DBUtils类对象的一个方法拿到
        InputStream is = DBUtils.class.getResourceAsStream("/db.propertis");
        try {
            PROPERTIES.load(is);//3.通过流,将配置文件内容以键值对的形式存储到PROPERTIES集合
            Class.forName(PROPERTIES.getProperty("driver"));//4.通过PROPERTIES.getProperty去拿那个键
        } catch (IOException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }

    }
    public Connection getConnection(){
        Connection connection = null;
        try {
            connection= DriverManager.getConnection(PROPERTIES.getProperty("url"),PROPERTIES.getProperty("name"),PROPERTIES.getProperty("password"));
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return connection;

    }
    public  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 e) {
            e.printStackTrace();
        }
    }
}

配置文件:

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/jdbc?serverTimezone=UTC
name=root
password=123456

 

标签:JDBC,封装,配置文件,java,跨平台,connection,import,getProperty,PROPERTIES
From: https://www.cnblogs.com/zhangtiedangg/p/17072124.html

相关文章

  • uView2.0 对http进行封装
    request.js://此vm参数为页面的实例,可以通过它引用vuex中的变量import{$config}from'@/config/config';module.exports=(vm)=>{//初始化请求配置uni.$......
  • thinkphp6封装导入导出方法
    <?php//+----------------------------------------------------------------------author:wjf//+--------------------------------------------------------------......
  • 数据访问层服务自动注册类封装和使用源码-AutoFac
    项目使用三层结构RepositoryIocFactoryusingSystem;usingSystem.Reflection;usingAutofac;namespaceCommonHelper.AutoInject.Repository{publicclassRe......
  • JDBC之封装工具类(重用性方案)
    JDBC之封装工具类(重用性方案)实际JDBC使用过程中,存在大量重复代码,例如连接和数据库和关闭数据库我们需要把传统JDBC代码重构,抽取JDBC工具类,以后连接数据库,释放资源,都......
  • JAVA的JDBC基础
    JDBC概念JDBC就是使用Java语言操作关系型数据库的一套API全称:(JavaDataBaseConnectivity)Java数据库连接 JDBC好处各数据库厂商使用相同的接口,Java代码......
  • elementui表格封装
    <template><divid="commonTable"><divclass="common_table"><el-table:data="tableData"ref="multipleTable"v-loading="loading"......
  • JDBC防止SQL注入
    JDBC防止SQL注入1.PreparedStatement的应用作用:1.预编译sql语句,效率高2.安全,防止sql注入3.可以动态的填充数据,执行多个同构的SQL语句 packagecom.qf.JDBC;......
  • JdbcTemplate的使用
    配置文件注入<beanid="jdbcTemplateIeCenter"class="org.springframework.jdbc.core.JdbcTemplate"> <propertyname="dataSource"ref="XXDataSource"></property> <......
  • JDBC之Sql注入问题
    JDBC之Sql注入问题用户输入的数据包括sql关键字或者语法,导致sql查询时where后面的条件固定为truesql注入的语法1.用户名+‘+or1=1;#案例packagecom.qf.JDBC;​impo......
  • python对接API二次开发高级实战案例解析:百度地图Web服务API封装函数(行政区划区域检索
    文章目录​​前言​​​​一、IP定位​​​​1.请求URL​​​​2.获取IP定位封装函数​​​​3.输出结果​​​​二、国内天气查询​​​​1.请求url​​​​2.天气查询封装......