maru-dog

バグとかいろいろ

データバインドライブラリとしてテストプロダクト的な位置付けでリリースしているmaru-dogですが、こいつにはいくつかバグがあります。というか、とりあえず一気に作ったのでスレッドセーフかどうか等の考慮が漏れているかと。特にコンバータ関係は、内部に…

How to use maru-dog JavaBeansプロパティデータバインドライブラリ (9)

前回から少し経ちますが、今回こそはmaru-dogのDSLについて解説したいと思います。maru-dogのバージョンは0.5.16以降を前提とします。これまでの日記でmaru-dogの内部DSLについては何度か簡単に説明したと思います。簡単におさらいすると、JavaBeansのプロパ…

maru-dogとmaru-common

maru-dogとmaru-commonは現在maruマルチプロジェクトとして開発していますが、マルチプロジェクトをやめてそれぞれ独自プロジェクトにするか、maru-commonをmaru-dogに統合するか検討中です。理由はいくつかあるのですが、バージョンが分かりづらいからです…

How to use maru-dog JavaBeansプロパティデータバインドライブラリ (8)

久しぶりにmaru-dogについて解説したいと思います。前回内部DSLについて概要を紹介し、今回は少し詳細に解説する予定でしたが少し寄り道をしようと思います。maru-dogで標準でサポートしているコンバータですが、version0.5.8以降でいつくか追加になったもの…

maru-0.6.17リリース

maru-0.6.17をリリースしました。JavaBeansデータバインドライブラリmaru-dogのバインド定義をOverrideするための内部DSLで流れるようなインターフェースで定義することができるようにしました。前回の記事で説明したようなかんじでバインド定義のDSLを記述…

maru-dogの内部DSL

maru-0.6.16をリリースしたばかりですが、内部DSLを修正したバージョンを早めにリリースしようと考えています。理由は、maru-dogの内部DSLを流れるようなインターフェースで記述可能にするためです。これまでのバージョンではdeclareFor〜endで定義を囲って…

maru-0.6.16リリース

maru-0.6.16をリリースしました。JavaBeansデータバインドライブラリmaru-dogにバインド元のプリミティブ型のプロパティをString型に変換してバインドを行う以下の拡張型コンバータを追加しました。 @ByteToString(Byte型のプロパティをString型に変換) @S…

次期maru-dogの追加機能

maru-dogの次期バージョンではコンバータをさらに追加しようと思っています。現行バージョンはString型を各プリミティブ型へ変換するコンバータを実装しましたが、次期バージョンではその逆でプリミティブ型からString型への変換を行えるようにしようかなと…

How to use maru-dog JavaBeansプロパティデータバインドライブラリ (7)

前回からかなり時間が空きましたが今回はバインド先とバインド元のJavaBeansに定義されたバインドアノテーションを上書きし、バインドの振舞いを変える方法を紹介します。maru-dogはアノテーションで付与されたバインド情報を上書きし、振舞いを変更するため…

How to use maru-dog Beanプロパティデータバインドライブラリ (6)

前回から少し時間が空きましたが、今回はMap型のインスタンスに格納されているデータをBeanの各プロパティにバインドする機能を紹介します。Map型のデータをバインドする場合にもアノテーションベースによるバインドと、フィールド名によるバインドの2種類を…

How to use maru-dog Beanプロパティデータバインドライブラリ (5)

前回は拡張コンバータについて説明をしました。今回は、第1回の終りのほうで少し触れたフィールド実名によるバインドについて簡単に解説したいと思います。これまで基本的には@Bound、@Bindアノテーションが付与されたフィールドに対してバインドを行う方法…

How to use maru-dog Beanプロパティデータバインドライブラリ (4)

前回はmaru-dogで標準で提供しているコンバータについて説明しました。maru-dogで提供しているコンバータはすべて拡張コンバータと呼ばれる方式で提供されています。 今回はアルファベット文字列を大文字(もしくは小文字)に変換し、指定されたメッセージを…

How to use maru-dog Beanデータバインドライブラリ (3)

第2回ではシンプルコンバータについて説明しました。今回はmaru-dogが標準で提供しているコンバータについて解説します。maru-dogが提供しているコンバータは以下の4つです。 @StringToDate 指定されたパターンのString型の日付データをjava.util.Date型に変…

How to use maru-dogデータバインドライブラリ (2)

前回は最もシンプルな利用例を紹介しましたが、今回はシンプルコンバータについて前回の例をもとに紹介します。UserProfileクラスのgenderはbyte型で1が男性(man)、2が女性(woman)を表していますが、バインド先のUserBeanのgenderはString型でman、woman…

How to use maru-dogデータバインドライブラリ (1)

maru-dogデータバインドライブラリはインスタンス間でプロパティのデータのコピーを行うライブラリです。apache-commonsのBeanUtilsによく似ていますが、アノテーションによるバインド制御や、複数のJavaBeansインスタンスのプロパティの値を1つの結果オブジ…

Marudogのドキュメント

ひとまず一通りかなり粗いけどドキュメントを書き終えました。MarudogドキュメントURL http://maru.sourceforge.jp/document_dog.htmlコーディングは楽しいけどドキュメントって書くの面倒・・・。そのうちmaven-site-pluginにて生成したもの変更するかも。

Marudogデータバインドライブラリ

以前冗長なコードを書くのが嫌いと宣言したような気がするけど、じゃあ自分でそういうのを書かなくていいようなライブラリを作ればいいじゃないと思って作りました。名前はMarudog。 Apache License, Version 2.0で配布します。http://maru.sourceforge.jp/…