网页显示无法打开JDBC连接事务;嵌套异常java.sql.SQLException:无法连接、 如何处理这种问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网页显示无法打开JDBC连接事务;嵌套异常java.sql.SQLException:无法连接、 如何处理这种问题相关的知识,希望对你有一定的参考价值。

这种情况一般是数据库连接串有问题,没设置对,或者连接池用户数已经满都可能出现无法链接的问题。

如果链接正常,而仅仅在做事务处理的时候有异常。
可能的情况:你的当前数据库链接在已经启动一个事务,未提交的情况下,又开启了一个新的事务。造成要操作的数据表锁定。
如果数据链接正常的话,楼主要给出更详细的信息才能判断。。
参考技术A 抛异常了,你看下你的JDBC连接是不是有问题,有没有取到connection追问

怎么看啊 ?

追答

在取到connection的类中写个main()方法,看能不能得到connection咯 或者你在觉得可能出错的地方system.out.println()一些东西,看代码有没有运行过来,如果你懂得DEBUG 那就更简单了,直接debug跟踪代码...

Bug解决:获取JDBC连接失败;嵌套异常是java.sql.SQLException:无法从底层数据库获取连接

出现的问题

  • Failed to obtain JDBC Connection; nested exception is
    java.sql.SQLException: Connections could not be acquired from the
    underlying database!
  • 说白了就是连接数据库出问题了,寻找了一个半小时才发现错误
  • 从头到尾检查了一遍,这里使用的是C3P0连接池。

解决方法

1.如果使用的是c3p0连接池,properties文件里的参数名不能和连接池的这个参数名一样

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    <property name="driverClass" value="$driver"/>
    <property name="jdbcUrl" value="$url"/>
    <property name="user" value="$myUsername"/>
    <property name="password" value="$myPassword"/>
</bean>

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/dbName
myUsername=root
myPassword=root

2.我的问题不是出现第一个,那就是第二个

原始配置

jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf8

修改后的配置

jdbc:mysql://localhost:3306/数据库名?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8

以上是关于网页显示无法打开JDBC连接事务;嵌套异常java.sql.SQLException:无法连接、 如何处理这种问题的主要内容,如果未能解决你的问题,请参考以下文章

java 启动jdbc 事务报错 嵌套异常

无法为事务打开 Hibernate Session;嵌套异常是 org.hibernate.exception.JDBCConnectionException:无法打开连接

无法获得 JDBC 连接;嵌套异常是 java.sql.SQLException:无法加载 JDBC 驱动程序类 'org.hsql.jdbcDriver'

无法提交 Hibernate 事务;嵌套异常是 org.hibernate.Transaction 异常:JDBC 提交失败

大神们 无法获取JDBC连接,嵌套异常java.sql.SQLException:连接无法从基础数据库中获得! 怎么具体解决??

Bug解决:获取JDBC连接失败;嵌套异常是java.sql.SQLException:无法从底层数据库获取连接