Shoeisha Technology Media

EnterpriseZine(エンタープライズジン)

EnterpriseZine(エンタープライズジン)

テーマ別に探す

第4回 フレームワークを使用した開発をサポートするプラグイン

edited by DB Online   2012/06/06 00:00

連載の最終回となる今回はO/Rマッピングフレームワークを使用した開発をサポートするプラグインを紹介します。

DB連携アプリの開発にはフレームワークが必須

 JavaではJavaプログラムからデータベースにアクセスするためにJDBCというAPIが用意されています。しかし、実際にデータベースと連携するアプリケーションを開発する場合はJDBCを直接使うのではなく、O/Rマッピングフレームワークを使用するのが一般的です。

 O/RマッピングフレームワークにはSQLを隠蔽しJavaのAPIやデータベースの差異を吸収することを目的とした独自クエリを使用するHibernateや、逆にSQLを直接記述することでデータベースの機能・性能を最大限に引き出すことのできるMyBatisなど様々なものが存在します。また、最近はJavaEE標準のO/RマッピングフレームワークであるEJB3(JPA)が利用されるケースも多くなってきています。

 連載の最終回となる今回はこれらのO/Rマッピングフレームワークを使用した開発をサポートするプラグインを紹介します。

Hibernate Tools

 URL:http://www.hibernate.org/subprojects/tools.html
 更新サイト:http://download.jboss.org/jbosstools/updates/stable/
 ライセンス:LGPL
 最新バージョン:3.4.0

 Hibernate Toolsは定番のO/RマッピングツールHibernateの利用をサポートするEclipseプラグインです。Hibernateの開発チームで開発されており、オープンソースのアプリケーションサーバであるJBoss向けの開発ツールであるJBoss Toolsにも含まれており、以下のような機能を提供しています。

 ・Hibernateのマッピングファイルの作成、編集支援
 ・データベースからのリバースエンジニアリング
 ・クライテリア、HQL編集用のエディタ、実行結果の確認

 大量のテーブルがある場合にエンティティクラスやマッピングファイルを手で記述するのは非常に手間のかかる作業ですが、Hibernate Toolsを使用することでこれらを自動生成することができます。

Hibernateパースペクティブ
Hibernateパースペクティブ

 また、HibernateではSQLではなくJavaベースのクライテリア APIか、HQLという独自のクエリ言語を使用して検索を行うことが可能ですが、このクライテリアおよびHQLを編集するためのエディタが提供されており、クライテリアやHQLを実際に実行して検索結果を確認することができます。

Dali

 URL:http://www.eclipse.org/webtools/dali/
 更新サイト:http://download.eclipse.org/releases/indigo
 ライセンス:Eclipse Public License v1.0
 最新バージョン:3.0.2

 DaliはJPAの利用をサポートするプラグインで、Eclipse FoundationにてWTP(Webアプリケーション開発用のプラグインセット)のサブプロジェクトとして開発されています。JPAはJavaEE標準のO/Rマッピングフレームワークであり、JavaEE対応のアプリケーションサーバであれば最初から利用できるほか、JavaSEでも使用できるため、手軽に導入することができます。Daliは以下のような機能を提供しています。

 ・JPAを使用するプロジェクトの作成

 ・テーブルからエンティティ、エンティティからテーブルの作成

 ・エンティティのマッピング設定

 JPAではアノテーションを使用してエンティティとテーブルのマッピングを行いますが、この設定をビューから行うことができます。また、存在しないテーブルやカラムにマッピングしようとした場合などアノテーションの指定に間違いがあるとエラーとして報告してくれたり、ソースコードと同期したダイアグラムでマッピングの設定を行うこともできます。

JPAパースペクティブ
JPAパースペクティブ
ダイアグラムでJPAのマッピングを編集
ダイアグラムでJPAのマッピングを編集

※この続きは、会員の方のみお読みいただけます(登録無料)。


※この続きは、会員の方のみお読みいただけます(登録無料)。


著者プロフィール

  • 竹添直樹(タケゾエナオキ)

    NTTデータ先端技術に勤めるしがないプログラマ。最近はオープンソースのJavaEEサーバであるJBossに翻弄されつつScalaでコードを書く日々を送っている。趣味でオープンソースソフトウェアの開発や雑誌・書籍等の執筆を行っており、オープンソースプロジェクトProject Amaterasを率いる傍ら、The Seasar ProjectやApache Software Foundationなどでもコミッタとして活動している。 Twitter: http://twitter.com/takezoen

バックナンバー

連載:データベース開発環境としてのEclipse
All contents copyright © 2007-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5