[英]JSP/Servlet validation - forward vs redirect
我想完成以下工作:
我有一個用JSP表示的表單–我們稱它為input.jsp
。 該表單提交給Servlet,該Servlet將在數據庫中創建對象-稱為CreateServlet
。 成功提交表單后,servlet應將用戶引導回input.jsp
並顯示成功消息。 驗證失敗時,它應重定向回input.jsp
,顯示錯誤消息,並保留輸入值。
我可以想到一些選擇:
在驗證失敗時,我可以使用RequestDispatcher
來執行對input.jsp
的轉發。 這將使我能夠輕松顯示表單中的驗證錯誤和輸入參數。 但是,我知道在執行編輯操作的情況下不應該使用轉發 ,所以當請求成功時,我不應該轉發,而應該重定向。 重定向的問題在於,除非我在URL中傳遞屬性(例如input.jsp?success=true
,否則我無法輕松設置屬性。
我可以在會話中存儲驗證消息,成功消息和輸入值,並始終執行重定向。 JSP顯示頁面之后,它可以從會話中刪除這些屬性。
我使用的是普通的servlet和JSP,而不是Struts之類的框架。 在這種情況下,建議的做法是什么?
如果我是您,我將選擇第二個選項。 我的原因 :
如果您使用諸如struts這樣的框架,這將非常容易。 一切都會由他們來處理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.