当前位置:网站首页>数据源对象管理Druid和c3p0
数据源对象管理Druid和c3p0
2022-08-05 07:42:00 【Java嘿嘿】
第一步导入相应的jar包(maven导入):
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.10.RELEASE</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.11</version>
</dependency>
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.29</version>
</dependency>
</dependencies>
第二步在Spring的配置文件中配置DataSource对象:
在配置之前要开context空间;并且使用下面这句配置context空间加载properties文件
<context:property-placeholder location="classpath*:*.properties" system-properties-mode="NEVER"/>
这里的property-placeholder:属性占位符
classpath*是类路径 *表示所依赖的jar中的配置文件
system-properties-modee="NEVER" 表示忽略环境变量中的配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
<context:property-placeholder location="classpath*:*.properties" system-properties-mode="NEVER"/>
<bean id="druid" class="com.alibaba.druid.pool.DruidDataSource">
<property name="name" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="url" value="${jdbc.url}"/>
<property name="driverClassName" value="${jdbc.driver}"/>
</bean>
<bean id="c3p0" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="dataSourceName" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="jdbcUrl" value="${jdbc.url}"/>
<property name="driverClass" value="${jdbc.driver}"/>
</bean>
</beans>
配置完之后在写main方法获取连接池对象:
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import javax.sql.DataSource;
import java.sql.SQLException;
public class MainApp{
public static void main(String[] args) throws SQLException {
ConfigurableApplicationContext appCon=new ClassPathXmlApplicationContext("ApplicationContext.xml");
DataSource Druid= (DataSource) appCon.getBean("druid");
DataSource c3p0= (DataSource) appCon.getBean("c3p0");
System.out.println(Druid.getConnection());
System.out.println(c3p0.getConnection());
}
}
这样我们就通过Spring管理第三方数据库连接池,获取到连接池对象。从而获取到Connection对象。
边栏推荐
猜你喜欢
TRACE32——Break
关于MP3文件中找不到TAG标签的问题
Game Thinking 19: Multi-dimensional calculation related to games: point product, cross product, point-line-surface distance calculation
【结构体内功修炼】结构体内存对齐(一)
力扣刷题八月第一天
MVCC of Google's Fragmented Notes (Draft)
MySQL: join query | inner join, outer join
cmake 学习使用笔记(三)
U++ UE4官方文档课后作业
ARM Cortex-M上的Trace跟踪方案
随机推荐
线程池的创建及参数设置详解
unity urp 渲染管线顶点偏移的实现
学习机赛道加速:请“卷”产品,不要“卷”营销
高效使用数码相机的诀窍
彩绘漂亮MM集
【win7】NtWaitForKeyedEvent
达梦数据库大表添加字段
Cannot compare or sort text, ntext, and image data types
TRACE32——C源码关联1
请问my sql如何把两个表的内容集合在一起啊?
Why does Mysql fail to create a database
3555. 二叉树
Discourse 清理存储空间的方法
uniapp time component encapsulates year-month-day-hour-minute-second
网络安全研究发现,P2E项目遭遇黑客攻击只是时间问题
protobuf is compiled against the associated .proto file
[instancetype type Objective-C]
TRACE32——Break
Vulnhub靶机:HA_ NARAK
SVG星球大战样式Toggle切换开关按钮