为什么80%的码农都做不了架构师?>>>   

今天下午收到一名网友的在线求助。先简要描述一下问题的背景:

Windows平台,tomcat应用服务器, Oracle数据库,应用架构Spring使用c3p0数据源

问题现象:tomcat在启动过程中会堵塞8分钟,然后报错:

2014-1-5 20:44:10 org.hibernate.connection.ConnectionProviderFactory newConnectionProvider
信息: Initializing connection provider: org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider
2014-1-5 20:52:00 org.hibernate.util.JDBCExceptionReporter logExceptions
警告: SQL Error: 0, SQLState: null
2014-1-5 20:52:00 org.hibernate.util.JDBCExceptionReporter logExceptions
严重: Connections could not be acquired from the underlying database!
2014-1-5 20:52:00 org.hibernate.cfg.SettingsFactory buildSettings
警告: Could not obtain connection metadata
java.sql.SQLException: Connections could not be acquired from the underlying database!
//...省略栈信息
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.

这个问题很常见,所以我给出了以下几条解决思路:

1. 检查数据库配置文件是否正确:驱动名 url 用户名 口令 端口 数据库

2. jdbc驱动包版本是否一致

3. 数据库服务是否正常启动

4. 用项目配置文件的配置,写一个java程序能否正常连接

通过第四步发现可以正常连接,那就排除了前面3种可能。紧接着,我又细细的看了他spring的配置文件,发现也没有什么问题。这时候我又感觉会不会是防火墙的因素,通过tomcat连数据库时不允许,后来去看了他的防火墙,果然开着,然后我将所有的策略关闭后,再试,还是不行。看来问题不在这里。

现在唯一能肯定的就是连接数据库连不上,那问题出在哪里呢?忽然我想起来一个事情,大家平时都习惯了用MyEclipse,喜欢用MyEclipse部署自己的项目,那么之前的项目部署后在不用的时候并没有remove掉,所以启动的时候很有可能是在加载另外一个项目时堵塞,抱着试一试的心态,我将本项目remove掉,重启tomcat,果然还卡在那里,问题的原因找到了。这样导致tomcat无法启动,也没有办法通过登录他的配置管理系统来停止其余的应用。最后只能将tomcat目录下webapps下的项目都删掉,然后启动后在部署,运行正常!

转载于:https://my.oschina.net/vbird/blog/190588

解决spring配置c3p0连接池,tomcat无法正常启动相关推荐

  1. spring配置c3p0连接池、spring的声明式事务管理

    一.spring配置c3p0连接池: 1.导入maven依赖: <!-- https://mvnrepository.com/artifact/com.mchange/c3p0 --> & ...

  2. Spring+Hibernate+c3p0连接池配置-连接无法释放的问题解决方案

     1.Spring+Hibernate+c3p0连接池配置: <?xml version="1.0" encoding="UTF-8"?> < ...

  3. spring 整合c3p0连接池

    个人博客:https://suveng.github.io/blog/​​​​​​​ Spring 整合C3P0连接池 注意:环境 jdk1.8 ,idea 2018,maven,spring环境 代 ...

  4. Hibernate配置C3P0连接池(在配好基本的hibernate配置下使用)

    拷贝jar包 找到我们的hibernate安装包,在lib目录下找到optional目录,打开c3p0文件,拷贝里面的jar包到eclipse里 写一个测试类,代码入下 public class C3 ...

  5. hibernate4配置c3p0连接池报错

    在hibernate的xml文件中配置c3p0连接池时,运行报错: java.lang.ClassNotFoundException: Could not load requested class : ...

  6. MyBatis配置C3P0连接池

    这两天学到Mybatis感觉就要疯了,第一次接触,我是不是应该写点笔记,下面呢,记录一下连接池的配置,防止忘了. 第一步,二话不说,先导入所需jar包(如图所示三个) 第二步,继承UnpooledDa ...

  7. Mysql超时重连解决方案3: 配置c3p0连接池(终极方案)

    前面的文章中,我介绍了修改mysql默认超时时间和配置proxool连接池的方法来解决Mysql超时重连的问题.方案1不推荐,它并没有从根本上解决问题:方案2可用,但配置相对复杂:所有才有了方案3,它 ...

  8. 【重温SSM框架系列】2 - Spring配置数据源连接池(手动创建与配置)

    Spring配置数据源) 数据源(连接池概述) 自定义数据源(手动创建) 1. 导入Druid和mysql数据库驱动依赖包 2. 创建数据源对象并配置基本连接信息 使用JDBC操作数据库,打印user ...

  9. Hibernate 配置C3P0 连接池

    第一步在hibernate.cfg.xml配置 <!-- 连接池 --><property name="hibernate.connection.provider_clas ...

最新文章

  1. c潭州课堂25班:Ph201805201 MySQL第二课 (课堂笔记)
  2. python变量域名_Python实现从url中提取域名的几种方法
  3. AI 如何推进全球可持续发展?
  4. Linux用户环境变量
  5. oracle 打印SQL
  6. 汉诺塔 X HDU - 2511
  7. python简单爬虫课题_VS2019python爬虫入门
  8. html表单自动提交表单提交表单数据类型,表单
  9. 第十天:SwiftGoodAsOldPhones
  10. 拼多多上线“医药健康日” 将对最常用的OTC药品等进行补贴
  11. 电源-主动式PFC介绍
  12. android电视自动关机,Android定时关机问题解决
  13. java中的terminated_解决maven build 无反应,直接terminated的问题
  14. 关于.length与.length()的问题
  15. 浏览器被流氓软件修改了主页怎么办?
  16. 【设计】01-15个漂亮的网站UI设计作品案例欣赏
  17. MySQL Utilities
  18. 算术移位 VS 逻辑移位
  19. 兼容NSR20F30NXT5G的小体积肖特基二极管
  20. Java中单引号和双引号的区别

热门文章

  1. VTK:Utilities之3DArray
  2. VTK:几何对象之PolygonIntersection
  3. QT的QSemaphoreReleaser类的使用
  4. QML基础类型之string
  5. 经典C语言程序100例之四六
  6. 经典C语言程序100例之四三
  7. c++预处理命令#pragma 用法
  8. C++11新特性- for语句
  9. Docker入门到实践
  10. solrj的使用,环境准备,工程搭建,索引创建,添加\修改索引,删除索引,查询