Oracle + JUnit4 で DBTestCaseを継承せずに dbUnit を使う

Oracle + JUnit4 で DBTestCaseを継承せずに dbUnit 使おうと思ったら、ちょっと苦労したのでメモ。http://www.dbunit.org/howto.html#noextend によると、DBTestCase を継承しないで DBUnit のテストケースを書くには、dbUnit 2.2以降はIDatabaseTester が…

Python3 で os.walk() を使ってファイル一覧を生成しようとしてyeildを使うまで

Python3 でツールを書いていて、あるフォルダ以下のファイル一覧を再帰的に取得したくなった。MS-DOS の 「DIR /S /B」みたいなイメージで。Python の osモジュールには、os.walkというこういうときに便利な関数があるので、これを使ってファイル一覧を作る…

Snow Leopard に git をインストールする(インストーラ使用)

SCM Bootcamp に参加したので、MBA (まだSnowLepardです…)にGitをインストールしたのでメモ。まず、ググる先生に聞いて、以下のサイトを参照。 最速で Git を Mac にインストールして基本的なコマンドを使う方法このサイトではMacPortsを使えば簡単!最速!…

MacBook Air 11インチ欲しい!

MacBook Air 11インチ欲しい!「MacBook Air 11インチ欲しい!」ってはてなダイアリーに書くと抽選で一名様にもらえるらしいんで2ヶ月ぶりに書いてます。しかもこんな内容でごめんなさい。MacBook Air 11インチ欲しい!現在MacBook Air(late 2009) モデルを…

Oracle JDBCドライバでLONG列にアクセスする際の注意点

LONG列なんかはもう非推奨で普通はBLOB使うからほとんど問題にはならない内容なのですが。Oracleのデータディクショナリテーブルの一つALL_TAB_COLUMNS(USER_TAB_COLUMNS)のDATA_DEFAULT列はなんとLONG型で、これにアクセスするときにこの問題にはまって2…

Windows7 で Oracle10g を

職場で Windows7 に Oracle10g クライアントをインストールすることになった。Oracle10gってWindows7対応はどうなってるのかな〜とおもってググって見ると、Oracle10g Exはうまくいっているようだけど、それ以外はなんかうまくいってない話ばかりが検索され…

scheduleAtFixedRate() を実行中のタスク側から停止する

Javaで、一定時間ごとに実行するプログラムをかく必要があったのでjava.util.concurrentのScheduledExecutorServiceを利用してプログラムを書いた。一定時間ごとの実行についてはscheduleAtFixedRate()を使って難なく書けた。 しかし、このとき実行されるタ…

クラスの遅延初期化方法

普通、シングルトンなクラスを作るとき、ふつう初期化は以下のようにする public class Hoge { private static final Hoge hoge = new Hoge(); private Hoge() {} public static Hoge getInstance() { return hoge; } } でも、これだとクラスHogeを参照した…

Vista で DHCPサーバーからIPを取得できない…

この正月の話。実家に帰省したとき、妹が実家の無線LANルーターの設定をいじってて、とても心の広い設定*1になっていたのに怒りを覚え、引き篭もり設定*2と変更した。 このとき、無線LANルーターがルーターモードになっていたのでこれをブリッジモードに変え…

クラス継承での注意事項

継承クラスでコンストラクタが呼ばれる順番は以下の通り 親クラスのコンストラクタ実行 子クラスの変数初期化 子クラスのコンストラクタ実行 なので、以下のような抽象クラスを作ってしまうと、正しく動作しない public abstract class hoge { public hoge()…

レコード型変数の初期化

Delphiで、レコード型変数に宣言時に初期値を入れる方法がわかったのでメモ。 type TTestRec = record column1: String; column2: String; column3: String; end; var //宣言時にデフォルト値入力 var_t: TTestRec = (column1:'VAR1'; column2:'VAR2'; colum…

かっこいいfor文

ツリー構造を、ノードからルートまでたどって処理をするプログラムを書くとき、いままでは以下のように書いていた。 Node nd = currentNode; while(nd != null) { queue.add(nd); nd = nd.parent(); } 今日、本を読んでいたら、以下のように書かれているのを…

勉強の記録

プログラマとして、アウトプットすることは重要、ということで、 日々の仕事・勉強・作業の中で、調べたこととかやったことを これからここに記録していこうと思う。