如果项目与数据库突然断开,BoneCP连接池可以自动重新建立新的数据库连接,但这些错误的连接不会马上被丢弃。而是由使用者使用错误连接出错后,再由BoneCP进行测试,测试失败的连接才会被抛弃。
当JdbcTemplate.execute(StatementCallback<T> action)调用到
stmt.executeQuery(sql)并出错时,StatementHandle会标记ConnectionHandle的possiblyBroken属性为true;
Conection.close()时,BoneCP会因为possiblyBroken的值为true,回收连接时会进行测试。
ReleaseHelperThread 线程回收使用过的连接时,如果possiblyBroken为真时,则测试该连接。
未完……
注:
ConnectionHandle为java.sql.Connection接口的实现类
StatementHandle为java.sql.Statment接口的实现类
分享到:
相关推荐
** BoneCP 连接池学习笔记 ** BoneCP 是一个高效、轻量级的 Java 数据库连接池(JDBC Connection Pool)实现。它在性能上优于其他同类连接池,如 C3P0 和 DBCP,尤其适用于高并发场景。在深入理解 BoneCP 之前,...
### Spring Boot 学习笔记概览 #### 一、Spring 的发展历程 1. **Spring 1.x 时代:** - 在Spring框架发展的初期(即Spring 1.x时代),主要采用XML作为配置文件来管理Bean的声明周期。这种方式在项目规模较小的...
### Spring Boot 学习笔记知识点总结 #### 一、Spring 的发展历程 1. **Spring 1.x 时代:** - 特征:主要通过 XML 文件来管理 Bean 的声明周期和依赖关系。 - 实践问题:随着项目规模的增长,XML 配置变得异常...
【Spring Boot 入门笔记】 在当今的软件开发领域,Spring Boot 已经成为Java企业级应用开发的首选框架,其简洁的配置和快速启动的特点深受开发者喜爱...通过学习和实践,开发者可以快速构建出稳定、高效的企业级应用。
接下来,学习Spring Boot的相关知识,掌握如何使用Spring Boot特有的starter依赖来快速搭建项目,并使用自动配置来简化项目开发。 创建基于Spring Boot的工程涉及到一系列配置。比如,在Maven项目中,需要定义...
### Spring Boot 开发笔记知识点详解 #### Spring 的发展历程与配置方式变迁 - **Spring1.x 时代** - 在 Spring1.x 时期,主要通过 XML 文件来管理 Bean 的声明周期和依赖关系。随着项目的复杂度增加,XML 配置...
本笔记将带你逐步了解Spring的发展历程,掌握其Java配置方式,并学习如何使用Spring Boot来改造购物车系统。 ### 1. Spring的发展 #### 1.1 Spring 1.x 时代 在Spring 1.x的时代,开发者主要通过XML文件来配置...
特别提到 BoneCP,其性能远超其他连接池,但目前使用较少。 **示例代码**:在 `application.properties` 中配置 Druid 数据源。 ```properties spring.datasource.type=com.alibaba.druid.pool.DruidDataSource ...