この本はいいかもしれない
id:higayashoさんやid:koichkさんが触れていたこの本はたしかによさげ。
Javaデータアクセス実践講座 (DB Magazine SELECTION)
- 作者: 松信嘉範
- 出版社/メーカー: 翔泳社
- 発売日: 2008/02/28
- メディア: 単行本(ソフトカバー)
- 購入: 9人 クリック: 323回
- この商品を含むブログ (18件) を見る
JDBCの基本的なところから説明されていて、ORマッパーに話が進むのでスムーズに理解できる。
ORマッパーの使い方だけ説明されても背後にある技術がわかってないと、いざというときに困るしね。
僕自身DB周りはかなり弱いので勉強になる。
SQLExceptionのErrorCodeとSQLStateの違いとかVersion NumberとかStatementのフェッチとかプリペアードステートメントキャッシュ
とかバッチ更新とかメタ情報とかトランザクションとか。。。
ただ結構RDBMSによって違いがあるみたい。特にMySQLのMyISAMテーブルの場合、トランザクション制御もできないらしい。
あとこの本とは関係ないけど、
JDBCドライバをロードするClass.forNameの意味も最近知ったし。これってDriverManagerにJDBCドライバ登録するため
のものだってことはわかってたんだけど、具体的にソースレベルでどうなっているか知らなかったのであんまりわかったって気がしなかった。正直いままでおまじないみたいなもんだと思ってた。
ちなみにHSQLDBだと以下のようになっている。
static { try { DriverManager.registerDriver(new jdbcDriver()); } catch (Exception e) {} }
参考:
Class.forName で DB アクセスできるようになる理由 - すぱいだー日記。
DB周りももっと精進せねば。トランザクションの際のログがどうなるかとかインデックスの原理とか。