SpringでREST APIで学んだ御作法。SpringとRestに限らないが。。
ちらしの裏で完全に自分用なので読んでもわからんかも。
・Controllerで返すResponseは予め決まった型を作っておく
クラスの中にエラーの場合のエラーコードとメッセージのフィールド変数を用意しておく、残りは必要な情報とか。僕はこれを知るまでResponseEntity<Object>で返してました。
汎用性が高いかららしい、まだそんな込み入ったことしてないからわからないがどうやらXMLが無難らしい。
・引数が5つ以上なら素直にDTO作ったほうが良い
ServiceからServiceを呼ぶ時とか、引数があまりに多いなら専用DTOを作るべき。
・別の層に渡すときは専用の入れ物を作るべき
ControllerとService、ServiceとRepositoryでやり取りする場合はそれ専用の入れ物を作るべき。
あとはバリデーション周りで色々あったが、それは気が向いたら書く。