Вызов одного и того же сервлета, нажав две разные кнопки, чтобы получить данные из одной базы данных. - PullRequest
0 голосов
/ 17 января 2011

Я создал страницу JSP, где создал форму поиска, где пользователь может видеть некоторые конкретные записи ученика на той же странице чуть ниже кнопки поиска. Поиск осуществляется следующим образом:

"select col1, col2 from table1 where regn_no='"+regn_no+"'";

После отображения двух столбцов (col1, col2) у меня есть еще одна кнопка на той же странице JSP, чтобы просмотреть детали, чтобы увидеть детали конкретного студента на основе regn_no. Кнопка поиска работает нормально, но кнопка просмотра сведений не работает. Я не знаю, как вызвать тот же сервлет. Любая помощь будет высоко ценится.

Ответы [ 2 ]

2 голосов
/ 17 января 2011

Пара «имя = значение» кнопки также отправляется в качестве параметра HTTP-запроса. Предполагая, что вы

<input type="submit" name="search" value="Search">

и

<input type="submit" name="view" value="View">

тогда вы можете различить нажатую кнопку в сервлете следующим образом:

if (request.getParameter("search") != null) {
    // Search button pressed.
} else if (request.getParameter("view") != null) {
    // View button pressed.
}

Смотри также:


Вне зависимости от проблемы, у вас есть SQL-инъекция риск . Использование PreparedStatement.

0 голосов
/ 17 января 2011

Предположим, что две кнопки в разных формах.Обе формы могут отправлять данные в один и тот же сервлет.Но вы должны сделать маркер, чтобы сообщить сервлету, какая кнопка нажата.Вы можете использовать скрытый ввод для этого.Скажите <input type="hidden" value="search"/> в форме поиска и <input type="hidden" value="viewdetail"/> в форме просмотра.Конечно, вы можете определить, какая кнопка нажата по атрибуту кнопки name, который будет отправлен в сервлет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...