1

Hibernate J2SE Swingアプリケーションを使用していますが、インターネット接続またはネットワークに問題があるときに接続を確立できなかったことを示すメッセージボックスをユーザーに表示したいと思います。キャッチする必要がある例外を知っています-

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

しかし、Hibernateはすでにこの例外を内部で処理しています。それで、皆さんは何を提案しますか?

4

1 に答える 1

3

独自の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 
于 2012-06-07T07:14:44.190 に答える