H2 DataBase Engineを使ってみよう〜作成編〜
じゃこれにS2dao経由でアクセスしてみよう。
Eclipse上で適当なプロジェクト立ち上げてlibフォルダを掘ってjarを放り込む
今回はH2を試すのが目的なのでhsqldb.jarは外しておいて、代わりにh2.jarを放り込む。
以上にライブラリパスを通す。
src、testのソースフォルダを掘って、diconを作っておく
dao.diconとj2ee.diconはサンプルのをコピる。
で、test.diconを作ってインクルードする
<?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.3//EN" "http://www.seasar.org/dtd/components23.dtd"> <components> <include path="dao.dicon"/> </components>
ただ、j2ee.diconはこのままでは動かないのでhsql用のサンプルをベースに書き換える
<component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "org.h2.Driver" </property> <property name="URL"> "jdbc:h2:test" </property> <property name="user">"sa"</property> <property name="password">""</property> <!--<initMethod>#out.println(@org.seasar.framework.util.EclipseUtil@getProjectRoot("s2dao").getAbsolutePath())</initMethod>--> </component>
設定が書けたらbeanを作る
redrisefirm.sample.h2.entity.Color.java
public class Color { public static final String TABLE = "COLOR"; private int id; private String name; (getter/setterは省略) }
次はdaoインターフェース
redrisefirm.sample.h2.dao.ColorDao.java
public interface ColorDao { Class BEAN = Color.class; List getAllColors(); }
getALLColors用のsqlファイルを作成して
ColorDao_getAllColors.sql
select id,name from color order by id;
test.diconにaopの適用を書いて
<component class="redrisefirm.sample.h2.dao.ColorDao" > <aspect>dao.interceptor</aspect> </component>
こんなところでしょうか