EJB QL は、EJB 2.1 の検索メソッドおよび選択メソッド (エンティティー Bean の 2 種類のクエリーメソッド) で使用する汎用クエリー言語です。EJB QL を使用して、これらのメソッドがデータを返すために使用するクエリーを定義します。検索メソッドまたは選択メソッドを含む Bean を配備すると、アプリケーションコンテナは汎用 EJB QL をコンテナによって作成された持続性マッピングに翻訳します (たとえば、コンテナに関連付けられた SQL データベースにアクセスするために必要な SQL のバージョン)。
検索メソッドはエンティティー Bean に固有のもので、エンティティー Bean は特定して見つかったデータベースのデータを表示します。検索メソッドは、エンティティー Bean またはエンティティー Bean のコレクションまたはセットを検索し、返すことができます。
選択メソッドは、コンテナ管理による持続性を使用するエンティティー Bean (CMP Bean) に固有のものです。選択メソッドは検索メソッドよりも柔軟性が高く、Bean クラスでのみ表示可能です。そのため、その Bean クラスのメソッドでのみ使用できます。Bean または Bean のコレクションを返すほかに、フィールドの値も返すことができます。
検索メソッドまたは選択メソッドの EJB QL を追加または編集する方法は、2 つあります。