• Could not open Hibernate Session for transaction;


       javax.servlet.ServletException: org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.TransactionException: JDBC begin failed:

      这个问题,我在网上找的答案是:

      

    1.
    给jdbc url 增加 autoReconnect=true 一定能解决你的问题,可以定期观察一下 show processlist
    改进方法如下:
    <property name="url" value="jdbc:mysql://localhost/数据库实例名
    称?&useUnicode=true&characterEncoding=utf-8&autoReconnect=true"/>
     
    2.
    寻找支持重连的连接池。
               注意:c3p0连接池支持重连;重连参数是:
                   idleConnectionTestPeriod   设置空闲连接测试周期
                   preferredTestQuery : 设置一查询语句,用于重连测试
                  testConnectionOnCheckin设置为true
                  testConnectionOnCheckout设置为true
     
    在sessionFactory里配置:
    <property name="hibernateProperties">
       <props>
            <prop key="hibernate.autoReconnect">true</prop> 
      </props>
    </property>


    但是最后我都不是这些问题,我发现我的

    <property name="connection.url">
      dbc:mysql://127.0.0.1:3306/personal?useUnicode=true&amp;characterEncoding=utf-8
    </property>

    出现了问题

      应该是这样的,我少写了一个 j 

    <property name="connection.url">
      jdbc:mysql://127.0.0.1:3306/personal?useUnicode=true&amp;characterEncoding=utf-8
    </property>

     所以出现了这样的问题,先看看我们的connection.url是不是正确的

  • 相关阅读:
    明确方向,勇往直前
    每日一笔记之3:QTconnect()
    每日一笔记之2:QT之坐标系统:
    每日一笔记之1:静态成员函数
    QT对话框模式与非模式
    Objective-C-实例变量与属性的关系
    Objective-C编码规范
    CocoaPods的安装与使用
    design_model(18)observe
    design_model(17)state
  • 原文地址:https://www.cnblogs.com/shaoshao/p/3776368.html
Copyright © 2020-2023  润新知