48

C# でプログラミングした人なら誰でも、ORM (オブジェクト リレーショナル マッパー) として Entity Framework があることを知っています。これにより、プログラマーは C# コードのみを使用してデータベースにクエリを実行できます。

たとえば、 というデータベースがShopあり、そのShopデータベースにテーブルがある場合、価格が 2 ドル未満Productsのテーブルのすべての製品を次の方法で取得できます。Products

ShopEntity _Db = new ShopEntity();
List<Product> products = _Db.Products.Where(p => p.Price < 2).ToList();

上記のコードは、次の SQL ステートメントと同等です。

Select * From Products Where Price < 2

Javaにそのようなフレームワークがあることを知りたいですか?

クエーレも見ました。ただし、コレクションを照会するだけです。データベースに対してクエリを実行したい。Java にはHibernateと呼ばれる別のフレームワークがありますが、これはデータベースのクエリに適切な機能を提供しません。

4

1 に答える 1

44

Java の標準 ORM API はJPAと呼ばれ、Java EE 仕様の一部です。別の方法として、Hibernateを使用することもできます。どちらも独自のクエリ言語 (それぞれJPQLHQL ) を提供しますが、LINQ が C# に対して行うように言語レベルで直接統合するクエリ フレームワークは Java には存在しません。

于 2013-03-27T18:03:56.403 に答える