スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

s2jdbcを素の状態から組む

s2jdbcを何も無いところから、組み上げてみました。Doltengやmavenを使っちゃうとブラックボックスみたいな感じで何やってるのかわからなくなっちゃうので、どうも好きじゃありません。昔からmaven使うならant使っちゃうなー

Seasarのホームページを見ると、こういうセットアップの方法が書いてあるので、それに従ってやります。ここまで簡単です。
この後、ソースの作成になるんですが、チュートリアルがどうも古くて、うまくいかないところがあります。うんうん唸って頭捻ってどうにか、動くようになりました。
ちなみに、各SQLは以下の通り。

create table t_user(id integer not null, name text, primary key(id));
delete from t_user;
insert into t_user (id, name) values (/*id*/1, /*name*/'aaa');
select id, name from t_user;

ソースは以下の通りです。

package jp.uniquevision.sample;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.seasar.extension.jdbc.JdbcManager;
import org.seasar.framework.container.S2Container;
import org.seasar.framework.container.factory.SingletonS2ContainerFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Main {
private static final Logger log = LoggerFactory.getLogger(Main.class);
private static final String SELECT_SQL = "jp/uniquevision/sample/sql/select.sql";
private static final String INSERT_SQL = "jp/uniquevision/sample/sql/insert.sql";
private static final String DELETE_SQL = "jp/uniquevision/sample/sql/delete.sql";
private static final String[] DATA = {"予定表", "?", "?", "ハンカク"};

public static void main(String[] args) {
SingletonS2ContainerFactory.init();
S2Container container = SingletonS2ContainerFactory.getContainer();
JdbcManager jdbcManager = (JdbcManager)container.getComponent(JdbcManager.class);

jdbcManager.updateBySqlFile(DELETE_SQL).execute();
for (int i = 0; i < DATA.length; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", i+1);
map.put("name", DATA[i]);
jdbcManager.updateBySqlFile(INSERT_SQL, map).execute();
}

List<Map> results =
jdbcManager.selectBySqlFile(Map.class, SELECT_SQL).getResultList();
for (Map m : results) {
log.info(m.toString());
}
}
}
スポンサーサイト

Tag : searsar s2jdbc

COMMENTS

COMMENT FORM

TRACKBACK


この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。