ActionFormとDTO

求人

ActionFormとDTOのコードについてです。

ActionFormはstrutsが由来なので、画面仕様寄りのプロパティの型(例えば日付がString型だったり)になると思います。

それに対してDTOはDB寄りの仕様になるので日付はDate型、LongならDBはNumberなどとDB寄りになるのが自然です。

で、ActionFormからDTOへ移送するのがActionクラスに書かれていたりしますが、リファクタリングしていくとActionFormクラスに書くべきです。(依存度が高いので)

ActionFormに書くと、以下みたいなコードになると思います。

ちなみにDTOのプロパティ(特に数値型)はプリミティブ型は使うべきではありません。

BigDecimalを使うべきです。

これはJava仕様上、プリミティブ型は0で初期化されるからです。

以下、DTOの例です。

ageをint型で定義しています。

これをsetterを使わずにいきなりgetするとnullではなく0が返ってきます。プリミティブ型にnullは指定できません。

結果は意図しない0となります。

関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
Python3.6,Djangoを勉強中です,Javaは少し飽きてしまってます–;
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^

スポンサーリンク
  • このエントリーをはてなブックマークに追加
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA