2016-11-08 11 views
0

私は一種の設計に関する質問があります: 私はjspとそのjspのデータを取得したコントローラを持っています。そのデータの一部はサービスクラスから来ています。 mvcパターンはコントローラを使用してサービスクラスを呼び出し、その情報を自分のビュー(jsp)に渡すように指示しています。 私のJSPからサービスクラスを直接呼び出すことができないのはなぜですか?なぜjspから直接サービスクラスを呼び出さないのですか

答えて

0

これは、開発者が時々行うことです。しかし、あなたはすべきではありません。

MVCは、互換性と懸念の分離についてです。 JSPからサービスを呼び出す場合は、パラメータや戻り値の型に対して厳密な結合を作成します。

さらに、通常、システムは単独では開発されていません。サービス内に内部ロジック用に使用するgetAllAdmins()メソッドがあるとします。あなたは本当に別の開発者がJSPで直接それを使用し、間違ってすべての管理者を表示したいのですか?おそらくそうではありません。

0

できます。あなたはすべてを1つのクラスに入れても、多分それはうまくいくでしょう。しかし、なぜ?そのようにするとすべての柔軟性が損なわれます。 ほとんどの例は考えていませんが、大きなアプリケーションにどのような利点があるのか​​考えるべきです。 thisをお読みください。

+0

はい、私は "can"の代わりに "should"を使うべきだったと思います。私はできることを知っていた、私は私がするべきではないことを知っていた。私はちょうど理由を説明する方法を知りませんでした。ありがとうございました! –

関連する問題