おーなるほどー

通勤電車の中でぼーっとしてたら、
ColdFusionとH2起動コンソールとでJREが違うじゃんってことに気づきました。


H2は組み込みDBとして動作する、というのがあったんで、
jdbc普通に使ってると、同じVMのヒープ上に展開されて動作してるのでは?
となると別のDBをみちゃってるのでは?
という疑いの元に調査してみました。


H2がDBインスタンスを持つとき、カレントディレクトリに
DB名.dbとかDB名.logとかのファイルを作成しているのを
見ていたので、もしColdFusionからJDBCで読んでいるDBが
別物であるなら、.dbファイルが別途作成されちゃっているはず・・


ということで、ColdFusionの実行ディレクトリを見てみると、
H2が作成したdbファイルが・・・・
ありました。

なーんだ、なんだよー
DBが別もんなんじゃん。
ねーわけだよコンソールで作ったテーブルがよー。


H2のソースとかドキュメントみてると、
H2をサーバーモードで起動し、
jdbcURLに
jdbc:h2:tcp://localhost:8082/foo
jdbc:h2:tcp://localhost:9092/foo

みたいな感じで指定してやると、起動したDBを見てくれる、げ・・・です。
WEB開発とかでは通常こっちで動作させるのが一般的な使い方みたいです。



要は僕のURL指定間違い、ということです。
よし、オチがついたな。