|
|
Eclipse3ではじめるJava Webアプリケーション開発 |
第9回:O/Rマッパーの利用
著者:宮本 信二 2005/3/16
|
|
|
前のページ 1 2 3 4 次のページ
|
|
S2Daoの環境設定
|
それでは、実際にS2Daoを使ってみましょう。まず、S2Daoの入手と設定から説明します。
|
ダウンロード
|
SeasarプロジェクトのWebページ(http://www.seasar.org/)より、S2(Seasar2)およびS2Daoをダウンロードします。ここでは、執筆時点の最新版のS2.1.11およびS2DaoV1.0.18をダウンロードしました。
ダウンロードしたファイルを適当なディレクトリに展開します。これらは、データベースサービスのように別途起動するタイプのツールではなく、JARファイルをアプリケーション内にコピー(あるいは直接外部のクラスパスを指定)して利用します。
|
Eclipseプロジェクトの作成
|
プロジェクトは通常のJavaプロジェクトとして作成します。ここではmys2daoという名前で、プロジェクト・レイアウトは「別のソースおよび出力フォルダ」として作成しました。
|
必要なファイルのコピー
|
プロジェクト以下に、次のようなファイルを作成していきます。
|
図3:必要なファイルの準備
|
まずJARファイルをコピーします。プロジェクト直下にlibという名前のフォルダを作成し、クラスパスに必要なJARファイルをコピーします。コピーするJARファイルは以下のものです。
|
- seasar2/lib以下のJARファイル
- s2dao/libのs2-dao-xxx.jar
|
その他に、JDBCドライバもコピーします。ここではHSQLDBを利用しますので、seasar2/libにあるものをそのまま利用します(JDBCドライバはDBとバージョンが違うと動作しない場合があるので、正しくは、JDBCドライバは別にコピーした方がよい)。そして、コピーしたJARファイルをEclipseプロジェクトのクラスパスに通します。
最後に設定ファイルをコピーします。s2dao/srcにある、以下のリストのファイルをsrcフォルダにコピーします。これらは自前で全部書いてもよいのですが、ここではサンプルのファイルを利用していきます。
|
- dao.dicon
- j2ee.dicon
- log4j.properties
|
以上で環境の準備は完了です。
|
S2Daoの利用
|
S2Daoを利用する環境が整いましたので、DAO、DTOおよびクライアントの作成を行いましょう。
|
DBテーブル
|
ここでは、データベースは第7回で作成したものをそのまま利用します。一応スキーマを示しておくと、以下のような簡単なテーブルです。
利用するDBテーブルのスキーマ
|
create table video (
title varchar(100) primary key,
price integer
);
|
|
DTOの作成
|
このVIDEOテーブルに対応するDTOを作成します。ソースコードは以下のリストのようになります。このクラスは、title、priceという名前のプロパティー(ゲッター、セッター)を持つJavaBeansです。
ここでTABLEという名前のstaticフィールドがありますが、これはこのクラスがVIDEOテーブルに対応することを示しています(定数で情報を埋め込んでいるので「定数アノテーション」と呼ばれます)。なお、この場合、DTOクラス名とテーブル名が同じなので省略できます。toString()はデバッグ用です。
リスト3:Video.java
|
package hoge;
public class Video {
public static final String TABLE = "VIDEO";
private String title;
private int price;
public String toString(){
return super.toString()
+ ",title=" + title
+ ",price=" + price
;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
|
|
前のページ 1 2 3 4 次のページ
|
|
|
|
著者プロフィール
宮本 信二 http://muimi.com/
テクニカルライター。Ja-Jakartaコミッタ。Java Webアプリケーション開発業務を経て、現在、主にJavaやOSS関連の調査、執筆を行っている。著書に「Eclipse 3 完全攻略」、「JavaデベロッパーのためのApacheAnt入門」(ソフトバンクパブリッシング)、「徹底解説!JSFのすべて」(秀和システム)などがある。
|
|
|
|