当前位置 : 主页 > 编程语言 > java >

java jdbc druid 连接池 连接工具类的编写 连接池版

来源:互联网 收集:自由互联 发布时间:2023-03-22
文件结构 配置信息 driver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/mybank?useUnicode=truecharacterEncoding=utf8username=rootpassword=root123initialSize=3maxActive=7maxWait=3000 连接工具类 package tools;import com.ali

文件结构

java jdbc druid 连接池 连接工具类的编写 连接池版_jar

配置信息

driver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/mybank?useUnicode=true&characterEncoding=utf8username=rootpassword=root123initialSize=3maxActive=7maxWait=3000

连接工具类

package tools;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;import java.io.InputStream;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;public class DbUtils { // 变量的定义 // 集合 private static Properties properties = new Properties(); // 连接池 private static DataSource ds; // 静态代码块 static { // 获取配置流文件 InputStream resourceAsStream = DbUtils.class.getClassLoader().getResourceAsStream("tools/base.properties"); try { // 集合加载配置 properties.load(resourceAsStream); // 给变量ds重新赋值 ds = DruidDataSourceFactory.createDataSource(properties); } catch (Exception e) { e.printStackTrace(); } } // 获取连接池 public static DataSource getDs() { return ds; } // 获取连接对象 public static Connection getConnection() { try { return ds.getConnection(); } catch (SQLException throwables) { throwables.printStackTrace(); } return null; } // 归还连接对象 public static void close(Connection connection) { if (connection == null) { return; } try { connection.close(); } catch (SQLException throwables) { throwables.printStackTrace(); } }}

测试类

import tools.DbUtils;import javax.sql.DataSource;import java.sql.Connection;public class Test { public static void main(String[] args) { // 获取连接池 DataSource ds = DbUtils.getDs(); System.out.println(ds); // 获取连接对象 Connection connection = DbUtils.getConnection(); System.out.println(connection); // 归还连接对象 DbUtils.close(connection); System.out.println("game over"); }}

最终效果

"C:\Program Files\Java\jdk1.8.0_172\bin\java.exe" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2021.1.3\lib\idea_rt.jar=65300:C:\Program Files\JetBrains\IntelliJ IDEA 2021.1.3\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_172\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\rt.jar;D:\Program_java\untitled30\out\production\untitled30;D:\Program_java\untitled30\lib\druid-1.0.9.jar;D:\Program_java\untitled30\lib\mysql-connector-java-5.1.0-bin.jar" Test{ CreateTime:"2023-03-16 23:49:56", ActiveCount:0, PoolingCount:0, CreateCount:0, DestroyCount:0, CloseCount:0, ConnectCount:0, Connections:[ ]}三月 16, 2023 11:49:56 下午 com.alibaba.druid.pool.DruidDataSource info信息: {dataSource-1} initedcom.mysql.jdbc.JDBC4Connection@e73f9acgame overProcess finished with exit code 0
网友评论