1.シナリオが実証します
今、求められている。要求がサーバーに到達し、サーバがどのように達成するか、別のページに要求されたデータを必要ですか?
2.目的の分析
二つの方法で実現し、サーバを介して、ページ移動:1のリダイレクトを転送しています。
私たちは、データジャンプページを実行するために、達成するために転送する必要があり、それは、データを前方に運ぶリダイレクトし、データを運ぶことができないことを知って、そう。
3.ソリューション
ページのgetAttribute(で値に);のsetAttribute()値によってページ要求オブジェクトに渡されます。
要求アドレス
http:// localhostを:8070 / DEMO2 / dispatcher.doのuserName =%の25E7%2594パーセント25A8%の25E6%2588パーセントの25B7の%の25E5%2590パーセント258D&パスワード= pwdの?
// UTF-8にsuccess.jsp解決するように設定された文字ブラウザに指示 response.setCharacterEncodingを( "UTF-8"); //ユーザ名 の文字列のuserName = request.getParameter( "userNameに"); // Tomcatサーバは、自動復号時間、そこにいずれかを復号する必要が(ユーザ名の合計二回符号化された) のuserName = URLDecoder.decode(ユーザ名、 "UTF-8"); //パスワードの 文字列= request.getParameterパスワード( "パスワード"); //フォワードどのページデータ持参する request.setAttribute(「userNameに」ユーザ名); request.setAttribute(「パスワード」、パスワード); //ジャンプsuccess.jspする(ブラウザのアドレスバーには変更されません) request.getRequestDispatcher (「/success.jsp").forward(request、応答)。
2つの方法でページの値:
ELによって得られた1発現。
$ {名前}プロパティ
2.小さなスクリプトを取得します。
<%= Request.getAttribute( "属性名")%>
4.効果ショー
説明:
リクエスト・オブジェクトの値を用いてページは、という理由だけで、JSPで達成することができる:サーブレット、JSPの性質上、およびサーブレットJava言語に属しているので、あなたは、JSP直接リクエストオブジェクトを使用して、値のことができるようにすることができます。
あなたは申し訳ありませんが、その後、htmlファイルを転送している場合したがって、あなたは、搬送されるデータ要求オブジェクトを取得することができなくなります。