JMX は Java コンポーネント管理の J2EE 標準です。 JMX 標準サービスを通して、 Hibernate は管理されます。ディストリビューションの中に org.hibernate.jmx.HibernateService という MBean 実装を用意しています。
JBoss アプリケーションサーバー上に Hibernate を JMX サービスとしてデプロイする方法の例としては、 JBoss ユーザーガイドを参照してください。 JBoss アプリケーションサーバーにおいて、 JMX を使ってデプロイすると、次のメリットが得られます:
セッション管理: Hibernate の Session のライフサイクルは、自動的に JTA トランザクションのスコープに結びつけられます。これは、もはや手動で Session をオープンしたり、クローズしたりする必要がないことを意味します。これは、 JBoss EJB インターセプタの仕事になります。また、コードのどこでトランザクション境界を設定するかについて、もはや悩む必要がありません(もちろん移植可能な永続層を書かかなくていいのならば、オプションの Hibernate の Transaction を使用してください。) Session にアクセスするためには、 HibernateContext をコールしてください。
HAR デプロイ: 通常、( EAR または SAR ファイルにある) JBoss サービスデプロイメントディスクリプタを使って、 Hibernate JMX サービスをデプロイします。それは、 Hibernate の SessionFactory の全ての一般的な設定オプションをサポートします。しかし依然としてデプロイメントディスクリプタのなかにすべてのマッピングファイルの名前を挙げる必要があります。もし、オプションの HAR デプロイメントを使うことを決めたなら、 JBoss は自動的に HAR ファイルのなかの全てのマッピングファイルを検出します。
これらのオプションについての詳細な情報は、 JBoss アプリケーションサーバーユーザーガイドを参考にしてください。
JMX サービスとして利用可能な他の機能に、 Hibernate 実行時統計情報があります。項3.4.6. 「Hibernate 統計」 を見てください。