什麼是PHP的$_POST
的Java等價物?在網上搜索了一個小時之後,我還沒有接近。使用Java Servlets訪問post變量
回答
您的HttpServletRequest
對象具有可用於獲取參數值的getParameter(String paramName)
方法。 http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html#getParameter(java.lang.String)
POST變量應該可以通過請求對象訪問:HttpRequest.getParameterMap()。例外是如果表單發送多部分MIME數據(FORM有enctype =「multipart/form-data」)。在這種情況下,您需要使用MIME解析器解析字節流。您可以自己編寫或使用現有的API,例如Apache Commons File Upload API。
下面是一個簡單的例子。我沒有喜歡html或servlet,但你應該明白。
我希望這可以幫助你。
<html>
<body>
<form method="post" action="/myServlet">
<input type="text" name="username" />
<input type="password" name="password" />
<input type="submit" />
</form>
</body>
</html>
現在的Servlet的
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");
....
....
}
}
你能告訴我如何獲得servlet頁面中的POST請求值嗎?我使用$ .ajax調用而不是表單動作和XMLHttpRequest? – selladurai 2011-05-20 09:23:37
以前的答案是正確的,但記得要使用輸入字段的名稱屬性(HTML表單),或者你不會得到任何東西。例如:
<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屬性中要接收的所有參數設置。
- 1. 變量未顯示Java Servlets
- 2. ajax調用後訪問post變量
- 3. 使用Java訪問變量擴展
- 4. Java:易變變量訪問
- 5. 限制訪問servlets
- 6. Java訪問時間變量
- 7. Java訪問實例變量
- 8. 直接訪問get/post變量而不顯式訪問$ _GET/$ _POST
- 9. 在Java Servlets中使用靜態變量(例如在AppEngine中)
- 10. 訪問變量的調用類java
- 11. 變量的訪問
- 12. 變量訪問
- 13. 批量上傳和Java servlets
- 14. 訪問變量
- 15. 在java中使用變量訪問對象引用數組
- 16. 訪問變量
- 17. 訪問變量
- 18. 訪問變量
- 19. 訪問變量
- 20. 訪問變量
- 21. 變量不使用POST
- 22. 我該如何訪問本地.properties變量? Java Swing正確的變量使用
- 23. 在Java中訪問shell環境變量
- 24. 在java中訪問繼承類變量
- 25. 局部變量訪問內部類(java)
- 26. Java:變量訪問說明符
- 27. Java編程訪問對象變量
- 28. 對本地變量名的Java訪問
- 29. Java中的訪問對象變量Nashorn
- 30. 可能訪問ApplicationContext.xml中的java變量?
注意:此答案早於Servlet 3.0的發佈和對`multipate/form-data`的標準支持。請參閱[Java EE 6 API](http://docs.oracle.com/javaee/6/api/javax/servlet/annotation/MultipartConfig.html)和/或[此博客文章](http:// balusc。 blogspot.com/2009/12/uploading-files-in-servlet-30.html) – McDowell 2012-03-09 09:05:49