2012-04-17 75 views
0

我使用jsp和servlets開發此web應用程序。我想知道如何在同一個頁面上顯示結果與發出請求的結果。例如,我通常所做的就是將請求從一個jsp發送到一個servlet,然後servlet將響應/結果發送到單獨的jsp上。我想要在同一頁面上顯示數據庫結果。如何做到這一點?..代碼片段將不勝感激。謝謝如何在jsp-servlets中顯示請求頁面的同一頁面上的結果

+1

使用Jabascript,您可以向servlet發送Ajax請求,檢索響應並在同一頁上顯示結果。 – dragon66 2012-04-17 20:56:01

回答

2

只需在請求範圍中設置必要的數據,然後使用RequestDispatcher#forward()將控件轉發到所需的JSP,然後根據結果生成適當的HTML。

request.setAttribute("results", results); 
request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response); 

這也在our servlets wiki page的hello world示例中得到證明。

0

從您的servlet,發送重定向到您的同一頁。另外,請求中設置一些屬性並將其顯示在您的頁面中,例如請求中保存List<MyObject>,然後在您的jsp從請求中讀取列表並在表中顯示值。

+0

會話範圍不是保存請求範圍數據的合適範圍。 – BalusC 2012-04-17 21:04:26

2

這完全可行,但您需要在工具集中包含JavaScript。我的建議是在您的應用程序中使用AJAX方法,這意味着大量使用客戶端腳本(即JavaScript)。來自DeveloperWorks的

This tutorial使得純JavaScript/Servlet方法成爲可能。如果你想做更高級的東西,我強烈建議你使用支持AJAX的JavaScript框架,比如JQuery

+0

這絕對不是那麼難。它比使用ajax更容易。 – BalusC 2012-04-17 21:04:43

+1

簡單而辛苦都是相對的。我會刪除形容詞以保持客觀 – 2012-04-17 21:11:37

相關問題