Доступ к сообщению переменных с использованием Java-приложений

голоса
46

Что такое Java эквивалент РНР $_POST? После поиска в Интернете в течение часа, я до сих пор нигде не ближе.

Задан 07/08/2008 в 20:39
источник пользователем
На других языках...                            


5 ответов

голоса
45

Ваш HttpServletRequestобъект имеет getParameter(String paramName)метод , который может быть использован для получения значений параметров. http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html#getParameter(java.lang.String)

Ответил 07/08/2008 в 20:43
источник пользователем

голоса
21

POST переменные должны быть доступны через запрос объекта: HttpRequest.getParameterMap () . Исключением является , если форма отправляет данные из нескольких частей MIME (форма имеет ENCTYPE = «многослойную / форма-данные» ). В этом случае вам необходимо разобрать поток байтов с MIME синтаксический анализатор. Вы можете написать свой собственный или использовать существующий вроде Apache Commons File Upload API.

Ответил 07/08/2008 в 20:47
источник пользователем

голоса
48

Вот простой пример. Я не получить фантазии с HTML или сервлет, но вы должны получить идею.

Я надеюсь, что это помогает вам.

<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");
    ....
    ....
  }
}
Ответил 14/08/2008 в 14:52
источник пользователем

голоса
1

Предыдущие ответы верны, но не забывайте использовать имя атрибута в поле ввода (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) вам нужно будет имя атрибут был установлен по всем параметрам, которые вы хотите получить.

Ответил 24/11/2016 в 11:12
источник пользователем

голоса
1

Для получения всех параметров поста есть карта, которая содержит запрос имя паров в качестве ключа и значения паров в качестве ключа.

Map params = servReq.getParameterMap();

А чтобы получить параметры с известным именем нормальным

String userId=servReq.getParameter("user_id");
Ответил 19/04/2018 в 13:12
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more