如何判断mysql数据库连接池是不是连接

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何判断mysql数据库连接池是不是连接相关的知识,希望对你有一定的参考价值。

我用的是java+struts2做的web,数据库用的mysql,JDBC连接。mysql8小时无连接自动关闭数据库,等下次使用程序时第一次连接数据库的查询语句抛出异常,想加一个判断,不在数据库连接池里,只在登陆后台action里,怎样增加判断?mysql_ping最好也说一下,谢谢。分数不低,最好能解决问题的
不要说修改wait_timeout。。。

如果你想在action里判断数据库是否链接,只能创建一个标记。全局变量。比如isConn.当创建链接的时候把这个标记设置为1.关闭数据库的时候标记重置 为0.这样在action里不用获取connection对像,直接判断这个全局标记就可以了。
还有就是在创建链接之前先判断这个标记是否是0。在关闭链接之前判断这个标记是否为1
参考技术A 在链接字符串中加上autoReconnect=true
如jdbc:mysql://localhost:3306?autoReconnect=true

如果想判断是否连接成功,可以通过jdbc返回一个Connection对象,判断该对象是否为空追问

这个早就试过了,没什么太大帮助,并且据说会有副作用。。。除了这个没有别的方法么?判断我还没试过,不知道怎么写,写在哪里,求指点

追答

你要操作数据首先得打开一个连接吧,根据你的数据源得到一个连接,然后判断,你是用的dbcp连接池么?如果是,通过DataSource对象的getConnection()方法就能返回一个连接对象,然后判断是否为空

追问

用的C3P0。是在连接池中判断么?还是在Action里判断?我只想判断登陆的那一次,因为登陆之后登陆信息存在session里只保存三十分钟,mysql关闭默认需要8小时,别的都不考虑判断问题

本回答被提问者采纳
参考技术B 如果有反应,亮起来的话就对了

C语言有mysql数据库连接池吗?

C语言有mysql数据库连接池吗? 如何编写啊?

我在网上找了很久了,可是一直没有找到。
我知道有mysql的连接池。但是都是jsp和tomcat的连接池。
我知道c语言和mysql该如何连接。我是说,怎么建立建立一个C语言和mysql的连接池。

我在网上没有找到相关资料。

参考技术A odbc有一个默认的连接池,这就是比尔的好处. 参考技术B Google一下
c语言 mysql库
关键词,就能找到鸟
参考技术C

以上是关于如何判断mysql数据库连接池是不是连接的主要内容,如果未能解决你的问题,请参考以下文章

初识mysql架构设计

如何查看mysql数据库连接池信息

C语言有mysql数据库连接池吗?

Mysql连接池

mysql连接 并且判断数据库是不是存在

golang中mysql连接池使用