6

アプリケーションをデプロイした後(アプリケーションの実行中)にデータベース接続がオンまたはオフになっているときに、JPAでデータベースが接続されているかどうかを確認する方法

4

2 に答える 2

6

最も簡単な方法は、次のようなクエリを実行することです。

em.createNativeQuery("select 1 from dual").getSingleResult();

通常、DataSource/接続プールまたは JPA プロバイダーは、何らかの接続テストまたはデッド接続の解決を提供します。

EclipseLink の接続プーリングを使用している場合は、切断された接続が自動的に検出され、クエリが再試行されます。

于 2012-07-03T13:00:14.693 に答える
1

通常、すべてのJPA実装は接続プールまたはプールされたデータソース(C3P0など)を使用し、これらの接続プールには、接続を取得する前にデータベース接続をテストする構成があります。この設定については、接続プール/データソースのドキュメントを確認してください。

于 2012-07-03T10:40:59.590 に答える