現在のレイヤー トポロジを使用しています。
1) dao 2) サービス 3) コントローラー (プレゼンテーション)
コントローラーの 1 つで、(クライアントから) 次の呼び出しを受信しています。
public PlayerStatisticsDTO getPlayerStatistics(int playerId);
コントローラーは、呼び出しをサービス層に委任する必要があります。
問題は、次のようなメソッドを作成した場合です。
public PlayerStatisticsDTO getPlayerStatistics(int playerId);
私のサービスでは、実際にサービス層に DTO オブジェクトを認識させています!
これは悪い習慣だと思います(またはそうではありませんか?)
だから私が思いついた私の他の選択肢は、新しいクラスを作成することです:
public class PlayerStatistics {...}
そして、コントローラーを呼び出します:
PlayerStatistics stats = this.service.getPlayerStatistics(playerID);
return toDTO(stats);
このソリューションの問題は、プロジェクトでこのクラスをまったく使用しないため、不要な重複コードのように見えることです