0

私の質問は素人かもしれませんが、HttpServletRequest、HttpServletResponse オブジェクトを引数としてビジネス ロジック メソッドに渡すことができるかどうかを知りたいですか?

それは良いプログラミングの練習ですか?

例 :

@RequestMapping( value = "/controller_name" , method = RequestMethod.GET)
public String getNewRegistrationPage(HttpServletRequest req,HttpServletResponse res)
{
    getDetails(req);
}

public void businessLogic(HttpServletRequest **req**)
{
    //business logic here
}

ありがとう、Sridhar R

4

4 に答える 4

3

良い習慣は相対的です。やらないというのが個人的な意見です。コントローラーは、リクエストから情報を抽出してビジネスレイヤーに送信する必要があると思います。そうすれば、Web アプリ以外の環境でビジネス レイヤーを使用できる可能性があります。これが実現不可能な場合は、ビジネス レイヤーおよび HttpServletRequest オブジェクトとやり取りするための util クラスを用意します。

于 2013-01-11T14:36:59.373 に答える
1

そうしないほうがいいです。これを実行する理由は、JSPから取得したパラメーターをビジネスロジックで使用するためです。したがって、これは次を使用して実行できます。

DataType param = request.getParameter("param");

getDetails(param);

したがって、提案された方法では、対応するビューにリダイレクトする前に、すべてのビジネスロジックをコントローラーで呼び出される関数に含める必要があります。

于 2013-01-11T14:46:14.487 に答える
0

他の状況ではビジネスロジックを効率的に再利用できないため、リクエストとレスポンスを入力パラメーターとして使用するビジネスロジックを実行することはお勧めできません。

以前は、リクエストからすべてのデータをハッシュマップにコピーし、ハッシュマップをビジネス ロジックの入力パラメーターとして渡していました。

常に無限のパラメーターを読み取る必要があるとは思わないので、今では保守しやすい単純な POJO を使用することを好みます。

于 2013-01-11T14:46:53.710 に答える
0

この投稿で既に述べたのと同じ理由で、これは良い習慣だとは思いません。

代わりに、リクエスト データを抽出してビジネス ロジックに渡す方法の詳細については、こちらをご覧になることをお勧めします。

于 2013-01-11T14:47:08.807 に答える