我想從數據庫傳遞一些值以使用各種選擇菜單(大約5)填充頁面。使用從Servlet到JSP的數據填充選擇菜單
我可以使用JSTL SQL
標籤做到這一點,但這不是好習慣。
如何從單個servlet獲取這些數據?
我可以從一個servlet發送多個列表嗎?
選擇菜單從不同的表中填充。我想使用RequestDispatcher
將列表轉發給jsp。
我想從數據庫傳遞一些值以使用各種選擇菜單(大約5)填充頁面。使用從Servlet到JSP的數據填充選擇菜單
我可以使用JSTL SQL
標籤做到這一點,但這不是好習慣。
如何從單個servlet獲取這些數據?
我可以從一個servlet發送多個列表嗎?
選擇菜單從不同的表中填充。我想使用RequestDispatcher
將列表轉發給jsp。
您可以使用單獨的ArrayList
來存儲Servlet中檢索的各種列表,然後將每個列表存儲爲請求屬性,如@devsundar所述。您可以通過隱式對象在您的JSP中檢索這些屬性。
如果你只想把所有的名單在單個請求屬性,那麼@KaipaMSarma's建議是好事,有一個HashMap<String, ArrayList>
,使你的servlet代碼可能是這個樣子:
List list1 = getListOneFromDatabase();
List list2 = getListTwoFromDatabase();
List list3 = getListThreeFromDatabase();
// and so on ...
Map<String, List> requestListMap = new HashMap<String, List>();
requestListMap.put("list1", list1);
requestListMap.put("list2", list2);
requestListMap.put("list3", list3);
// and so on ...
request.setAttribute("reqListMap", requestListMap);
希望這有助於。
您可以在請求屬性中設置來自數據庫的數據並將其呈現在JSP中。
http://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html#setAttribute(java.lang.String,java.lang.Object中)
是你可以做。從您的servlet中,您可以訪問數據庫(任意數量的表)並將結果集存儲在集合對象中,並將這些對象作爲屬性傳遞給JSP。
是的,但我怎麼能把多個列表放入一個請求屬性?這些列表最好來自不同的DAO的 – MaxI 2012-07-20 08:48:57
好吧..我有你的場景。讓我們拿一個Arraylist/Map並把你所有的列表放到它裏面,然後把這個對象設置爲一個屬性 – Jayy 2012-07-20 08:53:32
@KaipaMSarma – 18bytes 2012-07-20 09:01:34