[Seasar-user:3694] Re: [要望] S2Dao で扱うカラム名大文字小文字を COLUMN アノテーション優先に変更

Hirotaka HONMA [E-MAIL ADDRESS DELETED]
2006年 5月 28日 (日) 13:17:47 JST


本間です。

on Sun, 28 May 2006 11:10:55 +0900
suga <[E-MAIL ADDRESS DELETED]> wrote:

> 現状は 1, 2 のようになっています。
> 
> 1. 以下でプロパティ名、COLUMN アノテーションを読んでいる
> org.seasar.dao.impl.DtoMetaDataImpl#createPropertyType
> 
> 2. 以下で DatabaseMetaData を優先させる
> org.seasar.dao.impl.BeanMetaDataImpl#setupPropertyPersistentAndColumnName
>     "_" を取り除いたものと大文字小文字無視比較
>     一致するならメタデータから取得したカラムが有効 (小文字)
> 
> 
> これを次のように変更すれば実現できると思います。
> 
> a. PropertyType に COLUMN アノテーションかどうかを記録できるように
> b. COLUMN アノテーションから取得したかどうかを 1. で記録
> c. 2. で採用する優先順位を以下のように変える
> 
>     COLUMN アノテーション > DatabaseMetaData > プロパティ名

対応してみました。
trunkのSVNへコミットしましたので、ご確認ください。
テストコードはDaoMetaDataImplTestへ追加してあるものです。

また、FieldBeanAnnotationReaderの動きが変だったので一緒に直
しました。
(COLUMNアノテーションがついていない場合にプロパティ名を返し
ていたので、nullを返すようにしました。)

よろしくお願いします。




Seasar-user メーリングリストの案内