Вставка избыточных данных в таблицу со страницы Jsp

У меня есть одна страница jsp, и после заполнения этой страницы она переходит на другую страницу отчета, которая доступна только для чтения. При нажатии кнопки «Отправить» в первой форме он переходит на вторую страницу отчета и сохраняет данные в базе данных. У меня есть кнопка «Назад» во второй форме отчета, или я обновляю страницу. Форма отчета сохраняет копию тех же полей в базе данных.

Что я, возможно, делаю неправильно здесь?


person VIvek    schedule 20.07.2014    source источник
comment
вы можете принять это как ответ, если это полезно для вас   -  person Shravan    schedule 08.08.2014


Ответы (1)


Есть несколько способов обойти эту проблему

Токен сеанса Используйте токен сеанса, чтобы определить, обработана ли уже форма, вызвавшая первоначальную отправку.

Перенаправление Используйте перенаправление, а не перенаправление напрямую к представлению из сервлета, выполнившего операцию, которую вы не хотите дублировать.

Например: предположим, что после вставки строки вы хотите отобразить страницу, на которой показана сущность, представленная этой строкой. В вашем сервлете вставки вы должны выполнить операцию вставки SQL, но тогда вы НЕ будете напрямую переходить на страницу отображения. Вы должны перенаправить на сервлет, который получит результат вставки, а затем этот сервлет перенаправит на страницу отображения. Таким образом, при обновлении все, что происходит, это то, что сервлет повторно получает запись и отображает ее. Множественных вставок быть не может.

person Shravan    schedule 20.07.2014