PHPのJavaに相当するものは何$_POST
ですか?1時間ウェブを検索した後、私はまだどこにも近づいていません。
5 に答える
これが簡単な例です。私はhtmlやサーブレットに夢中になりませんでしたが、あなたはその考えを理解する必要があります。
これがお役に立てば幸いです。
<html>
<body>
<form method="post" action="/myServlet">
<input type="text" name="username" />
<input type="password" name="password" />
<input type="submit" />
</form>
</body>
</html>
サーブレットについて
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class MyServlet extends HttpServlet {
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String userName = request.getParameter("username");
String password = request.getParameter("password");
....
....
}
}
オブジェクトHttpServletRequest
には、getParameter(String paramName)
パラメーター値を取得するために使用できるメソッドがあります。 http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html#getParameter(java.lang.String)
POST 変数は、リクエスト オブジェクトHttpRequest.getParameterMap()を介してアクセスできる必要があります。例外は、フォームがマルチパート MIME データを送信している場合です (フォームにはenctype="multipart/form-data" があります)。その場合、バイト ストリームを MIME パーサーで解析する必要があります。独自に作成することも、Apache Commons File Upload API などの既存のものを使用することもできます。
前の回答は正しいですが、入力フィールド (html フォーム) で name 属性を使用することを忘れないでください。そうしないと、何も得られません。例:
<input type="text" id="username" /> <!-- won't work -->
<input type="text" name="username" /> <!-- will work -->
<input type="text" name="username" id="username" /> <!-- will work too -->
このコードはすべて HTML で有効ですが、getParameter(java.lang.String) を使用すると、受信するすべてのパラメーターに name 属性が設定されている必要があります。