How to use maru-dog JavaBeansプロパティデータバインドライブラリ (8)
久しぶりにmaru-dogについて解説したいと思います。前回内部DSLについて概要を紹介し、今回は少し詳細に解説する予定でしたが少し寄り道をしようと思います。
maru-dogで標準でサポートしているコンバータですが、version0.5.8以降でいつくか追加になったものがあるので今回はそれについて解説します。
まず、version0.5.8で追加されたコンバータはString型プロパティのデータを任意のプリミティブ型に変換するコンバータです。
利用例は次の通りです。
@Bind @ToByte private String byteValue
上記例ではString型のbyteValueのデータがバインド時にbyte型へ変換されます。プリミティブ型への変換については以下のものをサポートしています。
- @ToByte
byte型に変換してバインドを行う。
- @ToShort
short型に変換してバインドを行う。
- @ToInteger
int型に変換してバインドを行う。
- @ToLong
long型に変換してバインドを行う。
- @ToFloat
float型に変換してバインドを行う。
- @ToDouble
double型に変換してバインドを行う。
これに対して、プリミティブ型のプロパティをString型に変換してバインドを行うコンバータもVersion0.5.15以降でサポートされています。
利用例は次の通りです。
@Bind @ByteToString private Byte byteValue
上記例ではbyte型のbyteValueのデータがバインド時にString型へ変換されます。String型への変換については以下のものをサポートしています。
- @ByteToString
byte型のプロパティをString型に変換する。
- @ShortToString
short型のプロパティをString型に変換する。
- @IntegerToString
int型のプロパティをString型に変換する。
- @LongToString
long型のプロパティをString型に変換する。
- @FloatToString
float型のプロパティをString型に変換する。
- @DoubleToString
double型のプロパティをString型に変換する。
とまあこれだけのことなんですが、あると便利な局面に出くわすこともあるのかなと・・・?
maru-dogについて興味にある方は以下のサイトよりダウンロード、及びドキュメントの参照が可能です。
プロジェクトトップ:http://maru.sourceforge.jp/index.html
ドキュメントサイト:http://maru.sourceforge.jp/document_dog.html
ダウンロードサイト:http://sourceforge.jp/projects/maru/releases/
それでは、次回は今度こそDSLの詳細について解説したいと思います。(かわるかも・・・)