[Seasar-user:11804] Re: [DBFlute]dbflute.bsentity.customizeパッケージのクラスのequalsメソッドの意図

kubo [E-MAIL ADDRESS DELETED]
2007年 11月 26日 (月) 15:13:15 JST


久保です。

海野さん、こんにちは

> と判定するようになっていると思います。
> このif文の判定式の最初の
> 
>     getAaa() == null
> 
> という判定の意図を知りたいのです。
> 質問は、次の2点です。
> 
> ■質問1.
> getAaa() と otherEntity.getAaa() が両方nullである場合
> trueと判定しないのはなぜでしょうか。

基本的にEntityは主キー同士の比較になるので、
Null同士の判定を想定をしていませんでした。
しかし、Sql2Entityで作成したEntityは、明示的に主キー情報を
つけない限りで、全ての列での比較になるかと思います。
(主キーの無いテーブルも同様です)

よって、これはBUGということでnull同士でtrueを
返すように修正を検討したいと思います。
(無論build.propertiesで下位互換付けます)

> ■質問2.
> この場合trueとしたいので、継承先のクラスでequalsメソッド
> をオーバーライドしようと思います。
> オーバーライドすることについて注意点や懸念事項はありますでしょうか。

問題ありません。差しあたってオーバーライドで対応お願いします。




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