1

だから私は「File1.html」に1つのhtmlフォームを持っています

<form action="MyServlet" method="post">
    MyData: <input type="text" name="data"><br>
    <input type="submit" value="submit">
</form>

次に、サーブレットで次のことを行います。

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        RequestDispatcher myDispatch = request.getRequestDispatcher("File2.html");
    myDispatch.forward(request, response);
    }

したがって、ユーザーが File1 で「送信」ボタンを押すと、サーブレットはユーザーを File2 に移動します。しかし、最初のファイルに入力されたデータに 2 番目のファイルでアクセスするにはどうすればよいでしょうか。

4

4 に答える 4

2

Dispatcher を使用する前に、渡したい属性を設定します

request.setAttribute("AttributeName","This is the Attribute value.");

あなたの場合

request.setAttribute("data",request.getParameter("data"));

そして、発送されたページで、それを手に入れてください

String something =  request.getAttribute("data");
于 2013-02-19T08:50:36.437 に答える
0

静的htmlファイルにリダイレクトする場合、サーブレットを介してパラメータまたは属性を取得することはできません。

サーブレットにビジネスがない場合は、を使用して、JavaScriptを介してFile2.htmlからデータを取得できます。


または、サーブレットでFile2.htmlにリダイレクトし、「File2.html?name = blablabla」のようなクエリ文字列でデータを添付し、File2.htmlでjavascriptを使用してこれらのデータを取得することもできます。

ところで、javascriptでは、window.location.hrefを使用して、クエリ文字列を含む現在のURLを取得できます。

于 2013-02-21T15:36:56.393 に答える
0

あなたはそれをこのように得ることができます:-

request.getParameter("param");

于 2013-02-19T08:45:15.047 に答える
0

パラメータをリクエストに入れることができます:

String data = request.getParameter("data");
request.setAttribute("key",data);
myDispatch.forward(request, response);

次のように、新しいサーブレットまたは jsp からデータを取得できます。

Object data = request.getAttribute("key");
于 2013-02-19T08:49:04.553 に答える