コンテンツ
EJB QLまたはEJB-QLは、 Enterprise Java Beans用の移植可能なデータベース クエリ言語です。Java EEアプリケーションで使用されていました。しかし、 SQLと比較すると、複雑さは少ないものの、機能も劣ります。[ 1 ]
歴史
[編集]この言語、特にEJB3-QLはネイティブHibernateクエリ言語からインスピレーションを得ています。[ 2 ]
EJB3 では、ほとんどがJava Persistence Query Languageに置き換えられました。
違い
[編集]EJB QLはSQLに似たデータベースクエリ言語です。使用されるクエリはリレーショナルSQLとは若干異なり、リレーショナルモデルではなく、エンタープライズBeanのいわゆる「抽象スキーマ」を使用します。つまり、EJB QLクエリはテーブルとそのコンポーネントではなく、エンタープライズBean、その永続状態、およびそれらの関係を使用します。SQLクエリの結果は、固定数の列を持つ行の集合です。EJB QLクエリの結果は、単一のオブジェクト、指定された型のエンティティオブジェクトのコレクション、またはCMPフィールドから取得された値のコレクションのいずれかです。効果的なクエリを作成するには、エンタープライズBeanのデータモデルを理解する必要があります。[ 3 ]
参考文献
[編集]- ^ 「 expert one-on-one: J2EE Design and Development 」の序文(4 ページ)を参照してください(c)2002 wrox press。
- ^ 第7章 EJB-QL: オブジェクトクエリ言語
- ^ 「ADVANCED EJB QL: SQL vs. EJB QL: Relational and Object Query Languages」 。2008年5月13日時点のオリジナルよりアーカイブ。
EJB QL
EJB QLまたはEJB-QLは、 Enterprise Java Beans用の移植可能なデータベース クエリ言語です。Java EEアプリケーションで使用されていました。しかし、 SQLと比較すると複雑さは少ないものの、機能面では劣ります。[1]
歴史
この言語、特にEJB3-QLはネイティブHibernateクエリ言語に影響を受けています。[2]
EJB3 では、ほとんどがJava Persistence Query Languageに置き換えられました。
違い
EJB QLはSQLに似たデータベースクエリ言語です。使用されるクエリはリレーショナルSQLとは若干異なり、リレーショナルモデルではなく、エンタープライズBeanのいわゆる「抽象スキーマ」を使用します。言い換えれば、EJB QLクエリはテーブルとそのコンポーネントではなく、エンタープライズBean、その永続状態、そしてそれらの関係を使用します。SQLクエリの結果は、固定数の列を持つ行の集合です。EJB QLクエリの結果は、単一のオブジェクト、指定された型のエンティティオブジェクトのコレクション、またはCMPフィールドから取得された値のコレクションのいずれかです。効果的なクエリを作成するには、エンタープライズBeanのデータモデルを理解する必要があります。[3]
参考文献
- ^ 「 expert one-on-one: J2EE Design and Development 」の序文(4 ページ)を参照してください(c)2002 wrox press。
- ^ 第7章 EJB-QL: オブジェクトクエリ言語
- ^ 「ADVANCED EJB QL: SQL vs. EJB QL: リレーショナルおよびオブジェクトクエリ言語」。2008年5月13日時点のオリジナルよりアーカイブ。