13.2.4. 設定


13.2.4.1. Hibernate 設定プロパティー

表13.1 HibernateJava プロパティー
プロパティー名 Description
hibernate.dialect
Hibernate org.hibernate. metaect.Dialect のクラス名。Hibernate が特定の関係データベース向けに最適化された SQL を生成できるようにします。
ほとんどの場合、Hibernate は JDBC ドライバーによって返される JDBC metadata に基づいて適切な org.hibernate. metaect.Dialect 実装を選択できます。
hibernate.show_sql
ブール値。すべての SQL ステートメントをコンソールに書き込みます。これは、ログカテゴリー org.hibernate.SQLdebug に設定する代わりになります。
hibernate.format_sql
ブール値。pretty print で、ログとコンソールに SQL を出力します。
hibernate.default_schema
生成された SQL で指定のスキーマ/テーブルスペースを持つ修飾されていないテーブル名。
hibernate.default_catalog
生成された SQL で指定のカタログと修飾されていないテーブル名を修飾します。
hibernate.session_factory_name
その org.hibernate.SessionFactory 作成後、JNDI でこの名前に自動的にバインドされます。たとえば、jndi/composite/name です。
hibernate.max_fetch_depth
単独の関連 (one-to-one、many-to-one) の外部結合フェッチツリーの最大深さを設定します。0 は、デフォルトの外部ジョインフェッチを無効にします。推奨の値は 0 から 3 の間です。
hibernate.default_batch_fetch_size
関連付けの Hibernate バッチフェッチのデフォルトサイズを設定します。推奨される値は 4816です。
hibernate.default_entity_mode
この SessionFactoryか ら開かれたすべてのセッションに対するエンティティー表現のデフォルトモードを設定します。値には dynamic-mapdom4jpojo が含まれます。
hibernate.order_updates
ブール値。Hibernate は、更新する製品のプライマリーキーの値で SQL 更新の順序を強制します。これにより、非常に同時になるシステムでは、トランザクションのデッドロックが少なくなります。
hibernate.generate_statistics
ブール値。有効にすると、Hibernate はパフォーマンスチューニングに役立つ統計を収集します。
hibernate.use_identifier_rollback
ブール値。有効な場合、オブジェクトが削除されると、生成された識別子プロパティーがデフォルト値にリセットされます。
hibernate.use_sql_comments
ブール値。有効にすると、Hibernate はデバッグを容易にするため、SQL 内でコメントを生成します。デフォルト値は false です。
hibernate.id.new_generator_mappings
ブール値。@GeneratedValue を使用する場合、このプロパティーには関係があります。これは、新しい IdentifierGenerator 実装が javax.persistence.GenerationType.AUTOjavax.persistence.GenerationType.TABLE および javax.persistence.GenerationType.SEQUENCE に使用されるかどうかを示します。デフォルト値は true です。
hibernate.ejb.naming_strategy
を選択しますorg.hibernate.cfg.NamingStrategyHibernateEntityManager を使用する場合の実装。このクラスは非推奨であり、このプロパティーは下位互換性のためにのみ提供されています。このプロパティーは、と一緒に使用しないでくださいhibernate.ejb.naming_strategy_delegator
アプリケーションが EntityManager を使用しない場合は、以下の手順に従って NamingStrategy: Hibernate Reference Documentation - Implementing a Naming Strategy を設定します。
hibernate.ejb.naming_strategy_delegator
指定しますorg.hibernate.cfg.naming.NamingStrategyDelegatorHibernateEntityManager を使用する場合のデータベースオブジェクトとスキーマ要素の実装。このプロパティーには、次の可能な値があります。
  • org.hibernate.cfg.naming.LegacyNamingStrategyDelegator: これはデフォルト値です。このクラスは非推奨であり、下位互換性のためにのみ提供されています。
  • org.hibernate.cfg.naming.ImprovedNamingStrategyDelegator: これが推奨値です。JPA 仕様に準拠したデフォルトのテーブル名と列名を生成します。これにより、エンティティー名と外部キークラス名の両方を指定できます。このクラスは、Java アノテーションまたは JPAXML 記述子を使用してマップされたエンティティーにのみ影響します。hbm.xml を使用してマップされたエンティティーは影響を受けませんが、
  • 必要に応じて、実装するカスタムクラスを設定できます org.hibernate.cfg.naming.ImprovedNamingStrategyDelegator
注記
このプロパティーは、と一緒に使用しないでくださいhibernate.ejb.naming_strategy。の一時的な代替品ですorg.hibernate.cfg.NamingStrategyその制限に対処するため。両方を置き換える Hibernate5.0 のより包括的なソリューションが計画されていますorg.hibernate.cfg.NamingStrategyorg.hibernate.cfg.naming.NamingStrategyDelegator
アプリケーションが EntityManager を使用しない場合は、以下の手順に従って NamingStrategy: Hibernate Reference Documentation - Implementing a Naming Strategy を設定します。
重要
hibernate.id.new_generator_mappings の場合、新しいアプリケーションでは、デフォルト値である true のままにしてください。Hibernate 3.3.x を使用した既存のアプリケーションは、シーケンスオブジェクトまたはテーブルベースのジェネレーターを使用し、後方互換性を維持するために false に変更する必要がある場合があります。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.