iBATISでDecimal→BigDecimalしたら値がおかしくなる

iBATISなのかJDBCなのか切り分けてないけど、以下の問題が発生した。

前提

MySQL

DECIMAL型の列を定義。

CREATE TABLE XXX (
  -- ...
  decimalColumn DECIMAL(10,2),
  -- ...
)
Java

上記に対応するBigDecimal型のプロパティを作る。

class XxxBean {
    private BigDecimal decimalColumn;
    // ... setter,getterは記述略
}

操作

DECIMAL型の列に99.99を設定。iBATISで読込。

結果

暫定対処

精度的にはFLOATでも良かったので、列定義を DECIMAL(10,2)→FLOAT(10,2)に変更。
ちょっと調べればわかるような気もしますが…。