This is a cache of http://dbflute.seasar.org/ja/tutorial/handson/section12.html. It is a snapshot of the page at 2024-11-01T00:07:35.577+0000.
ハンズオンセクション 12 | <strong>dbflute</strong>

ハンズオンセクション 12

概要

Dream Cruise へようこそ

このセクションを見つけてしまった人は、やらなければならない。

事前準備

src/main/java 配下に org.docksidestage.handson.logic.HandsOn12Logic クラスを作成してください。この時点では空っぽで構いません。 また、ERDを開いておくと良いでしょう。

【事務連絡】org.dbflute.handson から、org.docksidestage.handson に変わりました。 org.dbfluteで開始した人は、そのまま org.dbflute で続けてOKです。もし、移行するなら log4j.properties と basicInfoMap.dfprop の該当箇所を修正してください。

Dream Cruise

とにかく cb.dreamCruiseCB() です。 (この章の検索は、すべて ConditionBean で実現すべし)

Dream Order

ロジックのメソッド
List<Member> selectDreamOrderList()
  • サービスポイントカウントを会員IDで割った値の大きい順で会員を検索
  • その割った値の先頭からの合計値が 24000 より小さい人だけのリストを戻す
  • その絞り込みは SQL でなくてもいいが、できるだけ効率よく
対応テストメソッド
test_selectDreamOrderList_その通りの順序で検索されていること()
  • その通りの順序で検索されていることをアサート

Dream LikeSearch

ロジックのメソッド
List<Member> selectDreamLikeSearchList()
  • 会員名称と会員アカウントを連結して部分一致させて、会員を検索
対応テストメソッド
test_selectDreamLikeSearchList_その通りの条件で検索されていること()
  • 連結した文字列に "cP" を含む会員を検索
  • その通りの文字列を含んでいることをアサート

Dream Update

ロジックのメソッド
void updateDreamUpdate()
  • 購入価格を購入数量で割った価格に更新
対応テストメソッド
test_updateDreamUpdate_その通りの条件で更新されていること()
  • そのレコードが期待通り更新されていることをアサート

Dream Correlation

OverTheWaves...

ロジックのメソッド
List<Member> selectDreamCorrelationList()
  • セクション5のテストデータの登録時チェックの住所の期間重複チェックをCBで
対応テストメソッド
test_selectDreamCorrelationList_その通りの条件で検索されていること()
  • テストケース内で一時的に期間重複のレコードを作成
  • そのレコードが検索されることをアサート

Dream DerivedRanking

MyselfDerived...

ロジックのメソッド
List<Member> selectDreamDerivedRankingList()
  • サービスポイント数ランキング(1始まり)付きの会員を会員IDの昇順で検索
対応テストメソッド
test_selectDreamDerivedRankingList_その通りの条件で検索されていること()
  • ランキングが正しいことをアサート

Dream お手軽チャレンジ

ランキング順位にログイン回数を掛け算した値の大きい順で並べてみましょう。(会員IDの昇順は無しで)

Dream ボーナスステージ

OverTheWaves...

ロジックのメソッド
List<Member> selectSection11RetryList()
  • セクション11の "自分だけが購入している商品を買ったことのある会員" を DreamCruise で
対応テストメソッド
test_selectSection11RetryList_その通りの条件で検索されていること()
  • そのレコードが検索されることをアサート

Dream AddedBoundDate

MysticRhythms...

ロジックのメソッド
List<Member> selectAddedBoundDateList()
  • 舞浜にある海パーク開業日にサービスポイント数を日数として足した日が、正式会員日時を越える会員
対応テストメソッド
test_selectAddedBoundDateList_その通りの条件で検索されていること()
  • そのレコードが検索されることをアサート

Dream 最終試練

Dream Cruise を使ったエクササイズを自分で考えて、自分で解いてみましょう。