Druid 数据库连接池
druid 数据库连接池 由阿里提供
步骤
1 导包 durid1.0.9 jar 包
2 定义配置文件 必须是 properties文件 名字任意 位置也任意
3 获得数据库连接池对象 通过 DuridDataSourceFactory获得
4 获取连接
具体代码如下
package Demo3Durid; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties; public class Demo3Durid {
public static void main(String[] args) throws Exception {
//加载文件
Properties pro=new Properties();
InputStream in = Demo3Durid.class.getClassLoader().getResourceAsStream("druid.properties");
pro.load(in);
//获得连接池对象 通过 DuridDataSourceFactory获得
DataSource ds = DruidDataSourceFactory.createDataSource(pro);
//获取连接
Connection conn = ds.getConnection();
System.out.println(conn); } }
利用工具类 实现 Druid连接池
package JdbcUtils; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties; /*
*Druid工具类
**/
public class JdbcUtils {
//定义成员变量 DateSource
private static DataSource ds; static{
//加载配置文件
try {
Properties pro=new Properties();
InputStream in = JdbcUtils.class.getClassLoader().getResourceAsStream("druid.properties");
pro.load(in);
ds = DruidDataSourceFactory.createDataSource(pro); } catch (Exception e) {
e.printStackTrace();
} }
public static Connection getConnection() throws SQLException {
return ds.getConnection();
}
//释放资源
public static void close(AutoCloseable... c){
for(AutoCloseable a: c){
if(a!=null){
try {
a.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
} } 连接
package JdbcUtils; import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException; public class Demo4Druid { private static PreparedStatement ps;
private static Connection conn; public static void main(String[] args) {
//完成一个添加操作 try {
//获得连接
conn = JdbcUtils.getConnection();
//定义sql语句
String sql="insert into coount values(null,?,?)";
//获得执行语句
ps = conn.prepareStatement(sql);
//给?赋值
ps.setString(1,"李登");
ps.setDouble(2,20000);
//执行sql
int i = ps.executeUpdate();
System.out.println(i); } catch (SQLException e) {
e.printStackTrace();
}finally {
JdbcUtils.close(ps,conn);
}
}
}
Druid 数据库连接池的更多相关文章
- Druid数据库连接池配置
DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB ...
- Druid数据库连接池源码分析
上一篇文章重点介绍了一下Java的Future模式,最后意淫了一个数据库连接池的场景.本想通过Future模式来防止,当多个线程同时获取数据库连接时各自都生成一个,造成资源浪费.但是忽略了一个根本的功 ...
- Spring Boot [使用 Druid 数据库连接池]
导读 最近一段时间比较忙,以至于很久没有更新Spring Boot系列文章,恰好最近用到Druid, 就将Spring Boot 使用 Druid作为数据源做一个简单的介绍. Druid介绍: Dru ...
- Druid数据库连接池就这么简单
前言 本章节主要讲解Druid数据库连接池,为什么要学Druid数据库连接池呢?? 我的知识储备数据库连接池有两种->C3P0,DBCP,可是现在看起来并不够用阿~当时学习C3P0的时候,觉得这 ...
- 阿里druid数据库连接池配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- 【spring boot】15.spring boot项目 采用Druid数据库连接池,并启用druid监控功能
在http://www.cnblogs.com/sxdcgaq8080/p/9039442.html的基础上,来看看spring boot项目中采用Druid连接池. GitHub地址:示例代码 == ...
- Spring Boot集成Druid数据库连接池
1. 前言 Druid数据库连接池由阿里巴巴开源,号称是java语言中最好的数据库连接池,是为监控而生的.Druid的官方地址是:https://github.com/alibaba/druid 通过 ...
- 基于Druid数据库连接池的DBUtil工具类
工具类 DruidUtil.java package com.zzuli.util; import com.alibaba.druid.pool.DruidDataSourceFactory; imp ...
- springboot2配置druid数据库连接池
注意配置以下的依赖: <!-- 引入druid数据源--> <dependency> <groupId>com.alibaba</groupId> &l ...
随机推荐
- C#中decimal,double和float的区别
float 单精度浮点 32bit,double 双精度浮点64bit,decimal是高精度 128bit,浮点型.float double 是 基本类型(primitive type),decim ...
- Lodop打印如何隐藏table某一列
Lodop打印超文本,既可以打印页面上存在的某些部分,也可以自己组织超文本和css样式传入,有些需要打印的页面表格里,会有一列有编辑删除等按钮,用于对于数据库数据的操作,在打印的时候,这一列由于不属于 ...
- vue 使用技巧总结 19.01
组件中箭头函数的使用 不要使用箭头来定义任意生命周期钩子函数: 不要使用箭头来定义一个 methods 函数: 不要使用箭头来定义 computed 里的函数: 不要使用箭头定义 watch 里的函数 ...
- [离散时间信号处理学习笔记] 8. z逆变换
z逆变换的计算为下面的复数闭合曲线积分: $x[n] = \displaystyle{\frac{1}{2\pi j}}\oint_{C}X(z)z^{n-1}dz$ 式中$C$表示的是收敛域内的一条 ...
- socket跟TCP/IP 的关系,单台服务器上的并发TCP连接数可以有多少
常识一:文件句柄限制 在Linux下编写网络服务器程序的朋友肯定都知道每一个tcp连接都要占一个文件描述符,一旦这个文件描述符使用完了,新的连接到来返回给我们的错误是"Socket/File ...
- HTML5-MathML-基础篇
MathML是数学标记语言,是一种基于XML(标准通用标记语言的子集)的标准.用来在互联网上书写数学符号和公式的置标语言. 注意:大部分浏览器都支持MathML标签,如果你的浏览器不支持该标签,可以使 ...
- IDEA Failed to prepare an update: Temp directory inside installation
具体错误: Connection Error Failed to prepare an update: Temp directory inside installation: F:\IDEA_Tool ...
- [NOIp2016] 蚯蚓
类型:单调队列 传送门:>Here< 题意:有$N$只蚯蚓,每秒都会伸长$q$.每一次都会有人选出最长的一条切成两半,长度分别是$\left \lfloor px \right \rflo ...
- linux 定时任务到秒级
linux crontab 只有到分钟级别的 有两种方法 方法1.写个sh脚本,循环(下例为每秒访问一次百度) #! /bin/bash PATH=/bin:/sbin:/usr/bin:/usr/l ...
- 「2017 Multi-University Training Contest 2」2017多校训练2
1001 Is Derek lying 题目链接 HDU6045 Is Derek lying? 给出两个人选择题的回答,问得分分别为x和y是否可能.(\(1\le N \le 80000,0\le ...