3.3. JMX との統合
JMX は Java コンポーネント管理の J2EE 標準です。JMX 標準サービスより Hibernate を管理することができます。ディストリビューションの中に
org.hibernate.jmx.HibernateService
という MBean 実装が用意されています。
JBoss Application Server 上に Hibernate を JMX サービスとしてデプロイする方法の例は、JBoss ユーザーガイドを参照してください。JMX を使用してデプロイすると、JBoss AS は次の機能も提供します。
- セッション管理: Hibernate の
Session
のライフサイクルは、自動的に JTA トランザクションの範囲にバインドすることができます。そのため、手作業でSession
を開閉する必要がなくなり、この作業は JBoss EJB インターセプタによって行われます。また、コードのトランザクション境界を心配する必要もありません (移植可能な永続層を記述したい場合は、 オプションの HibernateTransaction
API を使用してください)。HibernateContext
を呼び出してSession
にアクセスします。 - HAR デプロイメント: Hibernate
SessionFactory
の通常の設定オプションをすべてサポートするため、EAR ファイルか SAR ファイルの JBoss サービスデプロイメント記述子を使用して Hibernate JMX サービスはデプロイされます。しかし、デプロイメント記述子の全マッピングファイルに名前を付ける必要があります。オプションの HAR デプロイメントを使用すると、JBoss は HAR ファイルの全マッピングファイルを自動的に検出します。
これらのオプションについての詳細な情報は、JBoss AS ユーザーガイドを参考にしてください。
JMX サービスとして利用できる機能に、ランタイム時の Hibernate 統計があります。詳細は 「Hibernate 統計」 を参照してください。