タグ

jpaに関するtarchanのブックマーク (30)

  • Querydslを触ってみる - Challenge Engineer Life !

    今のJava EE開発では、JPQLを書く際 動的クエリ(Dynamic Query) 名前付きクエリ(Named Query) を使うようにしていて、来、型のことなど考えるとCriteriaで書くべきだなんだろうな…と思いつつ、可読性や簡易性を優先して上記選択にしています。 ただ、どうしても動的クエリはStringBuilderなどでクエリをダラダラと連結することになって、わりとイケてないらしい…ですね。 ということで、前に@megascusさんがブログで紹介されていたQuerydslを思い出し、これから少し触っていこうかなと。 QuerydslでJPAが思ったよりも捗る 上記ブログ記事の中にあるサンプルコードや、公式サイトのチュートリアルに接頭辞「Q」が付いたEntityクラスみたいなものが出てくるので、なんなんだろあれ?と思ってたのですが、定義したEntityクラスをベースにQue

    Querydslを触ってみる - Challenge Engineer Life !
  • JPQLを利用する際に行っていること - Challenge Engineer Life !

    今回の開発では初めてJava EE6を触り、初めてORマッパーを触るので、DBまわりや性能は結構気になる所です(^^; ちょくちょく「ORマッパー使うなんて危ないねぇ」なんて周囲にも言われたりもしますが、JPAやEclipseLinkをキーワードに海外での情報も多く、Java EE6としてもJPAを利用することが標準(ですよね!?)だと思っているので、とりあえずは開発段階で色々と気を付けながら使ってみています。 JPQLはメインで動的クエリを採用(Criteriaを利用したかったのですが…断念)し、非常に簡単なものはNamed Queryを利用してます。 で、タイトルにある「JPQLを利用する際に行っていること」ですが、あまり大それたことではありません。ただ、NetBeans7.3になってから組み込まれたツールのおかげで、作業が劇的に軽減されたので、手順をまとめておこうかなと。 Java

    JPQLを利用する際に行っていること - Challenge Engineer Life !
  • Cosminexus JPAプロバイダ

  • JPAエンティティ

    第III部    JPAエンティティ 第III部では、JPAエンティティおよびJPAエンティティ問合せの実装および構成の手順に関する情報を示します。概念的な情報は、第I部「EJBの概要」を参照してください。 第III部は次の各章で構成されています。 第6章「JPAエンティティの実装」 第7章「Java永続性APIの使用方法」 第8章「JPA問合せの実装」

  • Java永続性APIの使用方法

    JPAエンティティの主キーの構成 すべてのJPAエンティティには主キーが必要です。 主キーは単一のプリミティブ型またはJDKオブジェクト型のエンティティ・フィールドとして指定できます(「JPAエンティティの単純な主キー・フィールドの構成」を参照)。 個別のコンポジット主キー・クラスを使用して、1つ以上のプリミティブ型またはJDKオブジェクト型から構成されるコンポジット主キーを指定できます(「JPAエンティティのコンポジット主キー・クラスの構成」を参照)。 主キー値を自分で割り当てるか、主キー値ジェネレータに主キー・フィールドを関連付けることができます(「JPAエンティティの自動主キー生成の構成」を参照)。 JPAエンティティの単純な主キー・フィールドの構成 最も単純な主キーは、単一のプリミティブ型またはJDKオブジェクト型のエンティティ・フィールドとして指定する主キーです(「アノテーション

  • JPAで複合主キー・外部キー関連で諦めてしまったパターン - Challenge Engineer Life !

    以下のようなテーブル(とあるテーブルを抜粋してシンプルにしたもの)をJPAでEntityをNetBeansから自動生成して、デプロイしようとしたらエラーとなりました。 Caused by: Exception [EclipseLink-7220] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.ValidationException Exception Description: The @JoinColumns on the annotated element [field hogeEntity] from the entity class [class jp.co.hoge.entity.Foo] is incomplete. When the sour

    JPAで複合主キー・外部キー関連で諦めてしまったパターン - Challenge Engineer Life !
  • オンラインマニュアル ページ移転のお知らせ:ミドルウェア:ソフトウェア:日立

    日立オープンミドルウェアは、お客様の既存の財産を生かしながら、高い信頼性と柔軟性、自律性を備えたITシステムの実現を支えています。

  • JPQL速かった!〜JPAクエリ表現ごとのパフォーマンス比較 その2 - Dev3TechHack

    前エントリで、NativeQuery・JPQL・CriteriaAPIのどれが一番速いのかパフォーマンス比較を行い、NativeQuery悪くないじゃん、と結論づけました。そして、JavaEE AdventCalendar 2013を取りまとめて頂いた@megascusさんや、このネタを書く発端となった@yoshioteradaさんを始めとする多くの方々にコメントを頂きました。ありがとうございました。 その中で、JPQLをNamedQueryで宣言しておくと、起動時にプリコンパイルされるのでパフォーマンスが向上する、との情報を頂いたので、再実験してみました。 今回使用したソースはこちら 前回との差分を簡単に振り返っておくと、まず、JPQL文をfindProductという名前をつけて、EntityクラスにNamedQueryとして宣言しました。 @Entity @Table(name="pr

    JPQL速かった!〜JPAクエリ表現ごとのパフォーマンス比較 その2 - Dev3TechHack
  • JPA2.1でエンティティからインデックスを自動生成する - 水まんじゅう2

    ということで、やっとこさJPA2.1を触れましたよ。 最初に触ったのはJPA2.1から入った新機能@Index。 Entityからインデックスを自動生成できるという代物。 HibernateやらEclipseLinkでは実装されていたけれども、JPAでは仕様化されておらず、JPA単体では使用ができませんでした。 RDBを使用する上でインデックスは必要不可欠なものなのだけれども、JPAで仕様として定められていないため、可搬性を考えてEntityからテーブルを作成するようにしても、なぜかインデックスの作成だけはSQL叩かなければいけないという自体からは逃れられるように。 非常にありがたい。 @Entity @Table(indexes = @Index(columnList = "message1,message2")) public class NewEntity implements Se

    JPA2.1でエンティティからインデックスを自動生成する - 水まんじゅう2
  • Java Persistence API (JPA) 実践入門 - ひだまりソケットは壊れない

    この記事は Java EE Advent Calendar 2013 の 24 日目の記事です。 昨日は nabedge さんの 「JAX-RSのビューとしてMixer2を使ってみる」 でした。 明日は eller86 さんの 「ウェブアプリケーションサーバでよくあるクラスローダのトラブル」 です! 概要 これから Java Persistence API (JPA) を使ってみようとしている人向けの、JPA の簡単な使い方や IDE の機能の紹介などの話です。 私自身、最近 JPA を使い始めたのですが、日語の実践的な入門記事みたいなのが見当たらなくて苦労した (JPA の概念の説明記事は結構あって助かったのですが) ので、少しでも参考になればと思います。 IDE 関係の話は Eclipse ユーザー向けの説明になりますが、NetBeans でもだいたい似たようなことができるはずです。

    Java Persistence API (JPA) 実践入門 - ひだまりソケットは壊れない
  • JavaEE 7 JPA 2.1の新機能ストアドプロシージャ - しんさんの出張所 はてなブログ編

    JPA 2.1ではついにストアドプロシージャも標準で使えるようになった。 今までは実装依存のコードで使ってはいたが。 今回もストアドを簡単にJavaのコードで作れるDerbyのストアドで。ストアドになるともう組み込みモードだと意味がないレベルだけど。 引数に文字列、戻り値に文字列を渡すストアドの設定をする。コード全部見たほうが早いと思うので一気にのせる。Derbyのoutなどは配列を使っているのが注意する点か。引数で渡して戻り値を複数返す方法ということで割り切り方としてはまぁいいのだろう。 public class DerbyEmbedded3 { //ストアドの実装 public static void hello(String in1, String[] out1) { out1[0] = "Hello " + in1; } //main実行 public static void ma

    JavaEE 7 JPA 2.1の新機能ストアドプロシージャ - しんさんの出張所 はてなブログ編
  • OTN Japan マニュアル

    お探しのものを見つけるために、以下の項目を試してみてください。 キーワード検索のスペルを確認してください。 入力したキーワードの同義語を使用してください。たとえば、「ソフトウェア」の代わりに「アプリケーション」を試してみてください。 新しい検索を開始してください。

    OTN Japan マニュアル
  • Play! frameworkが使いにくい点 - nkmrshn’s diary

    Play! frameworkを使っていると、私はどうしてもRuby on Railsと比較してしまいます。 自動的にJOINしてくれない? Ruby on Railsの場合、モデルのfindメソッドに「:joins =>」があると、自動的にJOIN句を含んだSQL文が生成されますが、Play! frameworkのModelクラスは、やってくれない場合があります。 Play! framework 1.0.3をベースに、Userモデル(app/models/User.java)とPrefectureモデル(app/models/Prefecture.java)を作成しました。この2つは、一対多の関係にあります。 Userモデルは、firstName(名)、lastName(姓)、prefecture(都道府県)の3メンバ変数があり、prefectureは、Prefectureテーブルへの外

    Play! frameworkが使いにくい点 - nkmrshn’s diary
  • はじめての JavaFX エンタープライズ・アプリケーション : JavaFX と JPA で実装するアプリケーション

    はじめての JavaFX エンタープライズ・アプリケーション : JavaFX と JPA で実装するアプリケーション 2012年5月24日 at 8:26 午後 3件のコメント 日は少しだけ JavaFX を触ってみました。正直 JavaFX は櫻庭大先生や、関谷さん、他の Embedded チームの皆様に助けて頂いているので、私自身あまり JavaFX に触っておらず自信もないのですが、今日は、JavaFX から JPA を使って DB に接続するクライアント・サーバのアプリケーションの作成してみました。 開発環境: JDK 1.7 (Mac OSX 1.7.0_04) NetBeans 7.1.1 or later (Mac OSX 1.7.0_04) JavaDB (今回は GlassFish に付属の JavaDB を使用しました) 必要なライブラリ: eclipselink-

    はじめての JavaFX エンタープライズ・アプリケーション : JavaFX と JPA で実装するアプリケーション
  • rio's blog EJB3.0 の勉強 (11) JPQL (Java Persistence Query Language)

    おいでいただきありがとうございます。このブログでは、ソフトウェア開発や音楽(特にB'z)、車の事などを主にてきと〜に書いていく予定です。Rio's Laboratory (http://homepage3.nifty.com/rio_i/lab/) にて、いくつか文書とフリーソフトウェアを公開してます。 これまでの JPA 関連サンプルの DAO では、Entity の一覧を取得するために public List list() { Query query = em.createQuery("SELECT p FROM Person p"); return query.getResultList(); } の様なメソッドを用意していました。このメソッド内の "SELECT p FROM Person p" という SQL の様な記述は、JPQL (Java Persistence

  • Chapter 4 - JPA Queries (JPQL / Criteria)

    The JPA Query Language (JPQL) can be considered as an object oriented version of SQL. Users familiar with SQL should find JPQL very easy to learn and use. This chapter explains how to use JPQL as well as how to use the JPA Criteria API, which provides an alternative way for building queries in JPA, based on JPQL. The first section describes the API that JPA provides for using dynamic and static (n

  • はじめての Java Persistence API

    はじめての Java Persistence API 2011年12月19日 at 2:03 午後 2件のコメント 今日は、Java Advent カレンダーの一貫で 12/19 分のエントリを記載します。昨日のなぎせさんに続き掲載します。また明日は私の盟友である岡崎さんです。 先日、なぎせさんより、「ProxyパターンとProxyクラスと黒魔術」と題してSQL の事を取り上げていただきました。また私自身、先日岡山のイベントで JPA について登壇したばかりなので、今日は DB つながりということで JPA (Java Persistence API) について岡山の資料を利用しながらご紹介します。 岡山の発表資料の全部はこちらです。 Java でデータベース (DB) 接続をする際、Java で一番最初に DB 接続をサポートした事から、ながく JDBC が利用されてきました。その後、J

    はじめての Java Persistence API
  • JPA Hibernate (H2 database) をやってみる - sinsengumi血風録

    最近、Play framework が面白いなぁと思ってちょろちょろ遊んでたりするんですが、Play はモデル層に JPA を採用していて、実は JPA って一度も触った事が無かったのでこれを機にどういうものなのか試して見ました。 プロジェクトの準備 JPA は昔は Java EE(EJB) でしか使えなかったらしいですが、スタンドアロンでも使えるようになったらしいので、スタンドアロンで試してみます。 JPA の実装は Hibernate を使用します。 この Hibernate がやたら依存モジュールが多いので、簡単のため maven プロジェクトにします。 mvn archetype:create -DgroupId=com.example -DartifactId=JPASample pom.xml に以下を書いておく。 pom.xml に追加する jar はここらへんを参考にしまし

  • JPAをスタンドアローンなJava5アプリケーションで使う方法

    Java Persistence API (JPA)をスタンドアローンなJava5アプリケーションから使ってみる。JPA実装にはHibernateを利用する。 インストール HibernateのウェブページからHibernate Core、Hibernate-annotations、Hibernate-entitymanagerをダウンロードし、依存ライブラリと共にダウンロードしたjarにクラスパスを通す。 Persistence unitの定義 最初にPersistence unitを定義する。一つのPersistence unitは一つのデータベース(データソース?)に対応するようだ。 以下のxmlを作成し、persistence.xmlと言う名前でクラスパスの通ったフォルダの下のMETA-INFフォルダに保存する。 <persistence> <persistence-unit na

  • [ThinkIT] 第1回:O/Rマッピング (1/4)

    連載では今話題のフレームワーク「Ruby on Rails(以下、Rails)」と現在Webアプリケーション開発で主流であるJavaのフレームワーク群を比較していきます。 比較軸については、開発に関する事項(生産性やメンテナンス性など)を中心に解説していきます。第1回の今回はO/Rマッピングを提供するフレームワークについてです。 O/Rマッピングとは、オブジェクトとRDBのテーブルをマッピングすることをいいます。O/Rマッピングフレームワークはオブジェクト指向とRDBの仲介人となることで、アプリケーションの開発生産性を向上させます。 Railsからは同梱の「ActiveRecord」というO/Rマッピングのコンポーネントを取り上げます。対してJavaのO/Rマッピングとしては、もっとも知名度が高いと考えられる「Hibernate」と、Javaの正式仕様として策定された「Java Pers