2011-08-01から1ヶ月間の記事一覧
maru-dogとmaru-commonは現在maruマルチプロジェクトとして開発していますが、マルチプロジェクトをやめてそれぞれ独自プロジェクトにするか、maru-commonをmaru-dogに統合するか検討中です。理由はいくつかあるのですが、バージョンが分かりづらいからです…
久しぶりにmaru-dogについて解説したいと思います。前回内部DSLについて概要を紹介し、今回は少し詳細に解説する予定でしたが少し寄り道をしようと思います。maru-dogで標準でサポートしているコンバータですが、version0.5.8以降でいつくか追加になったもの…
前回はBean Validationの基本的な使い方について記事を書きましたが、今回はBeanValidationとその追加バリデーションライブラリであるm4hv-extensionsについて解説します。 m4hv-extensionsはBeanValidationの実装であるHibernateValidatorで動作確認を取っ…
Hibernate Validator 4はJSR303 - Bean Validationの参照実装で、JavaBeansに対するバリデーションフレームワークです。かなり手軽に使えるので個人的に気に入ってます。Bean Validationのインターフェースを実装し、独自の追加バリデータを作成するのも比較…
maru-0.6.17をリリースしました。JavaBeansデータバインドライブラリmaru-dogのバインド定義をOverrideするための内部DSLで流れるようなインターフェースで定義することができるようにしました。前回の記事で説明したようなかんじでバインド定義のDSLを記述…
maru-0.6.16をリリースしたばかりですが、内部DSLを修正したバージョンを早めにリリースしようと考えています。理由は、maru-dogの内部DSLを流れるようなインターフェースで記述可能にするためです。これまでのバージョンではdeclareFor〜endで定義を囲って…
maru-0.6.16をリリースしました。JavaBeansデータバインドライブラリmaru-dogにバインド元のプリミティブ型のプロパティをString型に変換してバインドを行う以下の拡張型コンバータを追加しました。 @ByteToString(Byte型のプロパティをString型に変換) @S…
これまでずっとmaru-dogの解説やJava7の解説なんかをメインでやってきたけど、そろそろmaru-dogについてはメイン機能の解説はなくなってきたので一通り解説し終わったらBeanValidator(HibernateValidator)とBeanValidatorの追加バリデーションを利用したm4…
maru-dogの次期バージョンではコンバータをさらに追加しようと思っています。現行バージョンはString型を各プリミティブ型へ変換するコンバータを実装しましたが、次期バージョンではその逆でプリミティブ型からString型への変換を行えるようにしようかなと…
前回からかなり時間が空きましたが今回はバインド先とバインド元のJavaBeansに定義されたバインドアノテーションを上書きし、バインドの振舞いを変える方法を紹介します。maru-dogはアノテーションで付与されたバインド情報を上書きし、振舞いを変更するため…
maru-0.6.9をリリースしました。今回はJavaBeansデータバインドライブラリmaru-dogにバインド元のString型のプロパティを各数値型に変換してバインドを行う以下の拡張型コンバータを追加しました。@ToByte @ToShort @ToInteger @ToLong @ToFloat @ToDoubleこ…
m4hv-extensions-1.4.1をリリースしました。追加変更点は次の通りです。BeanValidatorに日本語関連のバリデータを追加したバリデーションライブラリ。1.時間関連のバリデータ名称をそれぞれ以下のように変更しました。 Hour→Hours Minute→Minutes Second→Sec…
結構前から気になってたけどm4hv-extensionsのHour,Minute,Secondアノテーションの名前を近いうちに変更しようと考えてます。Hour→Hours Minute→Minutes Second→Seconds後方互換性ががなくなるので次期バージョンでやるかどうかは分からないけどいずれ将来的…
前回から少し時間が空きましたが、今回はMap型のインスタンスに格納されているデータをBeanの各プロパティにバインドする機能を紹介します。Map型のデータをバインドする場合にもアノテーションベースによるバインドと、フィールド名によるバインドの2種類を…
Java7について今回は少し地味なので2つ紹介。 switch文について Java7のswitch文ではcase句でString型のクラスで条件判断ができるようになっています。 switch(val) { case "JPN": System.out.println("Japan"); break; case "US": System.out.println("Unit…
m4hv-extensions-1.3.1をリリースしました。m4hv-extensionsはBeanValidatorに日本語関連のバリデータを追加したバリデーションライブラリです。追加バリデーションは次の通りです。(1)不正文字判定バリデータを追加 (2)有効文字判定バリデータを追加詳細は…
Java7ではtry-with-resourcesでCloseableインターフェースを実装したオブジェクトを利用する際に、リソースを自動で開放することが可能となったみたいです。 つまりこれまでfinally句内で記述していたclose処理を記述する必要がないということです。どんな感…