今回はMetamodelAPIを使ってSQLでいうところのWhere句とかそこらへんとかやってみます。 んで、いろいろやる前にCriteriaBuilder、CriteriaQueryおよびRoot作成までの処理。 CriteriaBuilder qb = em.getCriteriaBuilder(); CriteriaQuery<Customer> cq = qb.createQuery(Customer.class); Root<Customer> r = cq.from(Customer.class); ちょっといろいろ試してみたところ、ここまではローカル変数として定義しないといろいろやれないっぽいです。 なので、以下いろいろソース書いていきますが、それらのソースでは前提としてすでにこれらの変数が定義されているものとして見てください。 使うEntityとMetamodelは前回のC
さて、いよいよMetamodelの作成。 Metamodelにいろいろある仕様を簡単に列挙してみます。 entityというパッケージにあるCustomerというエンティティクラス*1に対するMetamodelのクラスはentityパッケージ内にCustomer_というクラス名で作成される*2 Metamodelクラスのクラス名は対象となるエンティティクラスのクラス名の後ろに"_"を付けたものになる*3 Metamodelクラスにはjavax.persistence.StaticMtamodelアノテーションを付けなければならない。 もしHogeというエンティティクラスがFooというクラスを継承(つまり@MappedSuperclassアノテーション等の付与されたクラスを継承)している場合、そのエンティティクラス(Hoge)に対するMetamodelクラス(Hoge_)はFoo_というFoo
I'm trying to get the following NamedQuery to work: @NamedQuery(name="MyEntity.findByUser", query="SELECT m FROM MyEntity m WHERE m.owner = :user OFFSET :offset LIMIT :limit") The problem is that this causes Hibernate to explode with the following stack-trace upon server startup: [INFO] [talledLocalContainer] java.lang.NullPointerException [INFO] [talledLocalContainer] at org.hibernate.hql.ast.Par
Hibernate は Java で O/R マッピングを実現するためのツールです。O/R マッピングツールは、 オブジェクト指向とリレーショナルデータベースの溝を埋めることを目的としています。 現実世界に即したオブジェクト指向という考え方と、数学的なアプローチから正規化をベースとして、 検索や登録に最適化されたリレーショナルデータベース。この両者の溝は、Java プログラマに余計なソースコードを書かせてきました。 Hibernate を利用することで、Java プログラマの負担が飛躍的に軽減されるのです。 そのHibernateについて解説していきます。 Hibernate INDEX Hibernateの基本 1.1. Hibernate とは 1.2. Hibernate で何がどうなる? 1.3. 環境の準備 Hibernateを使ってみよう 2.1. Hibernate とは 2
皆さん、はじめまして。本連載を担当するビーブレイクシステムズの山之内と申します。本連載ではO/Rマッピングについて検討していきます。 O/Rマッピング機能を提供してくれるフレームワーク(O/Rマッピングツール)はデータベースと連携するJavaアプリケーション開発において、既に必須となりつつありますが、O/Rマッピングツールはたくさん存在します。 しかし、各O/Rマッピングツールには特徴やクセがあり、実際の開発現場においてどのO/Rマッピングツールを導入すべきか迷っている人も多くいることでしょう。目的にあわせて適切なツールを選択しないと、思ったような効果が得られなかったり、かえって工数が増えたりする状況にもなりかねません。 そこで本連載では、代表的な3つのO/Rマッピングツール(iBATIS、Torque、Hibernate)を取り上げて、実際に各O/Rマッピングツールを利用したサンプルを作
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く