数据库连接池连接异常com.alibaba.druid.pool.GetConnectionTimeoutException-程序员宅基地

技术标签: java  数据库  大数据  

1、事务没提交

开启了事务,但是没有关闭事务,导致连接池一直被占用

事务管理代码:

@Autowired
    private PlatformTransactionManager platformTransactionManager;
    
    protected TransactionStatus startTx() {
        TransactionStatus transactionStatus = platformTransactionManager
                .getTransaction(new DefaultTransactionDefinition(
                        TransactionDefinition.PROPAGATION_REQUIRES_NEW));
        return transactionStatus;
    }
    protected void commitTx(TransactionStatus transactionStatus) {
        if(transactionStatus != null){
            platformTransactionManager.commit(transactionStatus);
        }
    }
    protected void rollbackTx(TransactionStatus transactionStatus) {
        if(transactionStatus != null){
            platformTransactionManager.rollback(transactionStatus);
        }
    }

启动事务没提交

TransactionStatus transactionStatus = null;
transactionStatus = startTx();

应该提交事务,释放连接池

commitTx(transactionStatus);

异常回滚事务

rollbackTx(transactionStatus);

 

2、连接没关闭

打开了数据库连接,没有关闭,连接池被占用

Connection conn = null;
ResultSet rs = null;

conn = jdbcTemplate.getDataSource().getConnection();

rs = conn.getMetaData().getTables(null, null, table, null);

应该在完成数据库相关操作后,关闭连接,释放连接池

if (rs != null) {
       rs.close();
 }
  if (conn != null) {
       conn.close();
 }

 

转载于:https://www.cnblogs.com/ouyanxia/p/9952549.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30648587/article/details/95468467

智能推荐

R 语言怎么保存工作目录到当前路径_C语言探索之旅 | 第二部分第七课:文件读写...-程序员宅基地

文章浏览阅读215次。内容简介前言文件的打开和关闭读写文件的不同方法在文件中移动文件的重命名和删除第二部分第八课预告1. 前言上一课 C语言探索之旅 | 第二部分第六课:创建你自己的变量类型 之后,我们来学习很常用的文件读写。我们学过了这么多变量的知识,已经知道变量实在是很强大的,可以帮助我们实现很多事情。变量固然强大,还是有缺陷的,最大的缺陷就是:不能永久保存。因为 C语言的变量储存在内存中,在你的程序退出..._怎么将txt文件保存在r工作环境所在的目录下

servlet-3_0-final-spec-程序员宅基地

文章浏览阅读118次。<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://java.sun.com/xml/ns/j2ee" xmlns:j2ee="http://java..._servlet-3_0 final-spec 中文版

lua函数之rawget和rawset_lua rewget-程序员宅基地

文章浏览阅读1.6k次。lua函数之rawget和rawset的应用_lua rewget

课下作业:每个人评价一下大家手头正在使用输入法或者搜索类的软件产品,从用户界面、记住用户选择、短期刺激、长期使用的好处坏处、不要让用户犯简单的错误四个方面发表一篇博客。...-程序员宅基地

文章浏览阅读85次。我对所使用的“搜狗输入法”的看法:  用户界面:1、界面简约精美,可切换风格皮肤,给用户较好的外观体验。        2、不使用的时候自动隐藏,较好的迎合用户的主要操作。  记住用户选择:输入法皮肤的使用、中英文切换。  短期刺激:打字时弹出的界面有特效,看起来很好。  长期使用的好处坏处:长期使用时能记录用户的常用字或词,特别方便。  不要让用户犯简单的错误:有词的自动..._每个人评价一下大家手头正在使用输入法或者搜索类的软件产品。 从用户界面、记住

福岛核泄漏必然性的分析_福岛核泄漏事故原因-程序员宅基地

文章浏览阅读3.2k次。 我作为一个核专业的专业,就给大家简单的说明一下,福岛核电站泄漏事故固然有天灾的缘故,但其背后隐藏着人为设计缺陷的必然性。 一、日本处于环太平洋火山带上,是一个地震高发国家。福岛核电站就位于地震带上。而我国核电站已充分考虑了地质结构的稳定性要求,同时考虑了海啸的影响。  二、福岛核电站在全部失去场内外电源的情况下,就会失去堆芯冷却的全部功能。而我国建设的压水堆核电站即使失去全部厂内外电源,也能通过自带的气动给水泵和蒸汽排放的形式维持对堆芯的冷却。  三、福岛核电站没有安全壳。虽然在200_福岛核泄漏事故原因

ONVIF 测试工具使用方法_onvif扫描工具-程序员宅基地

文章浏览阅读4.5k次。1 工具下载测试工具使用ONVIF Device Test Tool,具体下载地址可自行百度,一路默认安装即可。2 相机配置我使用的海康球机型号为DS-2DE2402IW-DE3/W,默认是没有打开ONVIF协议的,需要我们在配置中进行配置进入海康相机设置平台,选择配置-高级配置-勾选启用ONVIF-添加用户-输入登陆用户名和密码-保存以上即可完成相机ONVIF的相关配置3 连接设备..._onvif扫描工具

随便推点

通过Eclipse来生成UML类图_eclipse 生成类图-程序员宅基地

文章浏览阅读3.5k次,点赞18次,收藏44次。三种Eclipse生成UML类图简单教程(简单易学)_eclipse 生成类图

2021/10/24 2021ICPC江西省赛 部分个人题解 A,B,H,K,L,J_21年工控大赛 江西站题目-程序员宅基地

文章浏览阅读5k次,点赞9次,收藏15次。KMany Littles Make a Mickle题目大意:有t组输入,每组输入一个n,一个m,表示有n层,第i层有i*i个房间,每个房间有m个人,求有多少人。题解:数据小,暴力求和即可(也可直接输出i^2求和公式但是赛时没想那么多)#include <bits/stdc++.h>#define int long longusing namespace std;signed main(){ int t = 0; cin >> t; int n,m;_21年工控大赛 江西站题目

17. 如何通过 SAP ABAP OData $expand 操作在同一个 HTTP 请求中返回多个节点的数据_sap odata expand 方法debug-程序员宅基地

文章浏览阅读1.4k次,点赞2次,收藏2次。这些模型增强是在 ABAP 服务器的事物码SEGW里完成的。我们在 SEGW 里创建了Authors这个 Navigation Properties,它通过名为BookAuthor的 Relationship,依据 Book 和 Author 两个 Entity Type 的book_guid字段,描述了这两个节点间的导航关系,即通过一个 Book 实例,我们期望通过$expand操作,读取到其所有的 Authors 数据:其中绿色的位于$expand=_sap odata expand 方法debug

zint | 一个开源的条码二维码生成库和生成工具-程序员宅基地

文章浏览阅读2k次。一、zint1. 介绍Zint是一个软件,允许在任何广泛的公共领域条形码标准中轻松编码数据,并允许将这种功能集成到您自己的程序中。Zint项目的目标是提供一个完全跨平台的开源条形码生成解决方案,目前包含了:一个基于Qt的基础GUI一个命令行工具一个允许用户调用API使用Zint的库2. 下载zint在github的仓库地址为:https://github.com/zint..._zint库

Mac os搭建Arduino IDE开发STM32F1系列芯片_macbookpro stm32f1-程序员宅基地

文章浏览阅读880次。这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma..._macbookpro stm32f1

Qt简介 及与MFC、GDK+的比较-程序员宅基地

文章浏览阅读572次。Qt  C++图形用户界面应用程序开发框架。Qt的由来和发展  1、QT由来  Haavard Nord 和Eirik Chambe-Eng于1991年开始开发"Qt",1994年3月4日创立公司,早名为Quasar Technologies,然后更名为Troll Tech,然后在改为Trolltech,中文名是“奇趣科技”。2008年6月17日被NOKIA公司收购,以增强该..._qt gdk

推荐文章

热门文章

相关标签