Как отправить и отправить значения HTML-формы в файле JSP сервлету? [Дубликат]

На этот вопрос уже есть ответ здесь:

Как перенести данные из JSP в сервлет при отправке формы HTML 4 ответа

В HTTP-сервлетах для Java я хочу отправить форму. Каков рекомендуемый способ переноса значений из полей ввода? Это с помощью скрытых полей и получить их черезrequest.getParameter(...) или сrequest.getAttribute(...)?

Ответы на вопрос(2)

Решение Вопроса

ем поля ввода в качестве имени параметра и значением поля ввода в качестве значения параметра.

Например.

<form action="servletURL" method="post">
    <input type="text" name="foo" />
    <input type="text" name="bar" />
    <input type="submit" />
</form>

С внутриdoPost() метод:

String foo = request.getParameter("foo");
String bar = request.getParameter("bar");
// ...

Вам не нужно использовать JavaScript для переноса их в другие скрытые поля или что-то бессмысленное, если только вы не хотите передавать дополнительные данные, которые конечному пользователю не нужно вводить самостоятельно.

Атрибуты запроса должны быть использованы для обратного; для передачи результатов из сервлета в файл JSP, который, в свою очередь, должен представить их по всему HTML.

Смотрите также:Наши сервлеты вики-страница - содержит Hello WorldКак работают сервлеты? Инстанциация, сессии, общие переменные и многопоточностьdoGet и doPost в сервлетах
 H.Rabiee12 апр. 2012 г., 16:12
Итак, нет ничего «неправильного» или плохого стиля в использовании скрытых полей? Я обнаружил, что должен использовать Javascript в следующем случае: если есть несколько элементов с уникальными идентификаторами, пользователь может выбрать только один элемент для дальнейшей обработки. Теперь для переноса того, какой элемент был выбран, мне нужно, чтобы JS установил флажок в скрытом поле. Или есть лучший способ?
 BalusC12 апр. 2012 г., 16:17
Я не понимаю, что вы говорите. Идентификатор элемента не имеет значения для форм HTML. Просто дайте элементу имя и проверьте его в карте параметров запроса.

getParameter(...). getAttribute() предназначен для передачи данных в области запроса через сервлет / JSP в контексте одного запроса на стороне сервера.

Ваш ответ на вопрос