java - 当 Hibernate 失去连接时显示消息

标签 java hibernate swing

我有一个 Hibernate J2SE Swing 应用程序,我想向用户显示一个 MessageBox,说明当 Internet 连接或网络出现问题时无法建立连接。我知道需要捕获的异常 -

java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection

但是Hibernate内部已经处理了这个异常。那么你们有什么建议呢?

最佳答案

您可以实现自己的 ConnectionProvider . 基本上,只要 Hibernate 需要数据库连接,它就会在其配置的 ConnectionProvider 上调用 getConnection()

您可以创建您当前正在使用的 ConnectionProvider 的子类并执行类似的操作:

public class MyConnectionProvider extends WhateverConnectionProviderYouAreUsing
  {
      public Connection getConnection()
      {
           try
           {
               return super.getConnection();
           } 
           catch (Exception e)
           {
               // Show message about connection error
           }
       }

在 SessionFactory 配置中,您必须像这样配置自定义 ConnectionProvider

hibernate.connection.provider_class=your.packagename.MyConnectionProvider 

关于java - 当 Hibernate 失去连接时显示消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10925543/

相关文章:

java - 将整数映射到对象的最佳方法是什么?以对象作为键

java - 如何使用 while 循环找到最大变量?

java - 部署 Web 应用程序时仅读取 .properties 文件一次

java - 如何减少hibernate搜索(lucene)中的结果集?

java - JComboBox.setModel 在操作过程中保持选择

java - 二维数组 : TicTacToe program

hibernate - Hibernate HQL createQuery()list()类型强制转换为直接建模

java - PgPool Java/JDBC 应用程序的负载平衡

java - JOptionPane 输入验证

java - 带 Swing 的测试套件