ダウンロード サンプルソースコード (628.6 KB)
iBATISはSQLを利用することに注力したフレームワークです。この記事は前稿「iBATISを使ったO/RマッピングによるDBアクセスの実例」の続編です。 今回はRowHandler、TypeHandlerを使うことで標準のiBATISにない機能を拡張する方法について説明します。
はじめに
Apache iBATISはSQLを利用することに注力したフレームワークです。高機能なO/Rマッピングフレームワークに比べて簡単に理解でき、レガシーなJDBC、ResultSetを使ったプログラミングから簡単に乗り換えられます。特にSQLを多用する人には使いやすいフレームワークです。
この記事は前回、前々回の記事の続編です。今回はiBATISの機能を拡張する方法として、検索結果をCSVデータとして出力する方法と、データベースのデータから任意のデータ型に交換する方法を紹介します。
iBATISの基本的な内容は、以前の記事を参考にしていただけると分かりやすいと思います。
過去の記事
対象読者
- Javaの基本をマスターしている人
- SQL文を理解している人
必要な環境
iBATIS 2.3.0、J2SE 5.0の環境を前提に解説しています。データベースの選択は自由ですが、サンプルプログラムはHSQLDBで動作確認しています。
本記事で使用しているデータベースは3つのテーブルを使用しています。
CREATE TABLE DEPT ( DEPTNO NUMERIC(2) NOT NULL, DNAME VARCHAR(14), LOC VARCHAR(13), CONSTRAINT PK_DEPT PRIMARY KEY (DEPTNO) ); CREATE TABLE EMP ( EMPNO NUMERIC(4) NOT NULL, ENAME VARCHAR(10), JOB VARCHAR(9), MGR NUMERIC(4), HIREDATE DATE, SAL NUMERIC(7,2), COMM NUMERIC(7,2), DEPTNO NUMERIC(2) NOT NULL, CONSTRAINT PK_EMP PRIMARY KEY (EMPNO) ); CREATE TABLE EMPIMAGE( EMPNO NUMERIC(4) NOT NULL, IMG LONGVARBINARY, CONSTRAINT PK_EMPIMAGE PRIMARY KEY(EMPNO) );
DEPT、EMPテーブルについては、以前の記事で使用したものと同じです。
添付のサンプルソースコードには、HSQLDBにおけるCREATE TABLE文とサンプルデータを同梱しています。
この記事は参考になりましたか?
- iBATISを使ったO/RマッピングによるDBアクセスの実例連載記事一覧
-
- iBATISを使ったO/RマッピングによるDBアクセスの実例 3
- iBATISを使ったO/RマッピングによるDBアクセスの実例 2
- iBATISを使ったO/RマッピングによるDBアクセスの実例
- この記事の著者
-
佐々木孝(ササキタカシ)
Javaをメインに業務システムの開発サポート、パッケージ開発、および技術研究をしています。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
