簡體   English   中英

將自定義消息從Servlet傳遞到JSP頁面?

[英]Passing customized messages from Servlet to a JSP page?

我是JSP和Servlet的新手。

我想知道的是將一些自定義消息傳遞到客戶端網頁的最佳方法。

例如,假設我有一個說為student.jsp的網頁,該網頁具有一個表單,用於向我們的在線應用程序注冊一個新學生。在成功插入表單的所有字段之后,用戶提交表單並將數據提交給我們的servlet,以進行進一步的處理現在,Servlet將對其進行驗證並將其添加到我們的數據庫中。因此,現在Servlet應該發送一條消息,指示最終用戶輸入的數據成功插入到最終用戶(在本例中為Student.jsp)。

因此,我可以將這類消息傳遞給任何客戶端網頁。

我不想將此消息作為URL查詢字符串傳遞。

還有其他更好和安全的方式來傳遞此類消息嗎?

使用request.setAttribute("message", yourMessage) ,然后將( request.getRequestDispatcher("targetPage.jsp").forward()request.getRequestDispatcher("targetPage.jsp").forward()到結果頁面。

然后,您可以通過JSTL( <c:out value="${message}" /> )或request.getAttribute(..)讀取目標頁面中的<c:out value="${message}" /> (這不是可取的-應該避免在jsp中使用scriptlet )

如果您確實需要response.sendRedirect(..) ,則可以將消息放入會話中,並在檢索到消息后將其刪除。 為此,您可能需要一個自定義標簽,以使您的jsp代碼看起來不太“丑陋”。

我認為在JSTL中看起來像這樣:

<c:remove var="message" scope="session" />

我還認為,如果“ message”是Java字符串,則可以像這樣使用后將其設置為空字符串:

<c:set var="message" scope="session" value="" />

實際上,如果“消息”是Java字符串數組,它似乎也可以工作:String [] ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM