jsp-ボタンの送信ボタンとIFステートメントの負荷
質問
私のJSPページには、たとえば多くの提出ボタンがあります
<input type="submit" name="RemoveCustomer" value="Submit"/>
<input type="submit" name="AddCustomer" value="Submit"/>
そして私のスクリプトレットタグの中に私はこのようなものを持っています
if(request.getParameter("addByName") != null && request.getParameter("addByName").length() > 0) {
...
} else {
if(request.getParameter("removeByName") != null && request.getParameter("removeByName").length() > 0) {
...
} else {
...
}
}
addbynameとremoverbynameはHTMLテキストフィールドです
明らかに、ボタンremoveCustomerをクリックしてremoveByNameにアクセスして何かをしますが、AddByName Textfieldが空でない場合は顧客が追加されます。
私が知りたいのは、私のスクリプトレットにあることです。どのような送信ボタンが押されたかを知るにはどうすればよいですか?
解決
request.getParameter( "submitbuttonの名前")を行うことができます。ここで、送信ボタンの名前はRemovecustomerまたはAddCustomerです。
他のヒント
セクションを入れることができます <div>
何が起こったのかを明確にするクラスまたはIDで。
JSPが適切なリファクタリングを必要としているように聞こえます。あなたが同意した場合、私は2つの提案があります:
- すべてのスクリプトレットコードを削除し、JSTLのみを使用します。 JSPはビュー用のみです。すべてのロジックをページから移動します。
- ロジックは、実際にサーバー側のコントローラーに属します。すべての着信トラフィックを受け入れるフロントビューコントローラーサーブレットを用意し、さまざまなユースケースを処理するために特別に記述されたクラスにリクエストを代表します。
- アプリがSpring、WicketなどのMVCフレームワークの恩恵を受けることができるようになったかもしれません。1つを調べることをお勧めします。
所属していません StackOverflow