2013-01-07 65 views
0

我在一個ArrayList中擁有大量的數據,這個數據庫包含了我大學的2600個類。我正在試圖構建一個JSP頁面來顯示這些信息。我無法弄清楚如何在表格中顯示這些數據。如何從servlet中將ArrayList內容顯示爲​​?

要開始測試,我只是爲了驗證我可以訪問數據。

HTML:

<html> 
    <head> 
    <body> 
    <button id="btnData">Get all classes.</button> 
    <div id="dataDisp></div> 
    <script> 
    $(document).ready(function(){ 
    $("#btnData).click(function(){ 
     $.get('daoServlet', function(responseText){ 
     $("#dataDisp").text(responseText); 
     }); 
    }); 
    }); 
    </body> 
<html> 

的Servlet:

@WebServlet("/daoServlet/*") 
public class ClassDAO extends HttpServlet 
{ 
    //Code getting my ArrayList<ClassInfo> set up, etc. 

    @Override 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
    throws ServletException, IOException 
    { 
     String text = fallClassListings.toString(); 

     response.setContentType("text/html"); 
     response.setCharacterEncoding("UTF-8"); 
     response.getWriter().write(text); 
    } 
} 

這將顯示每一個類。那麼,我可以採用什麼方向將這些數據格式化到我的index.jsp頁面中的表格中?我試圖做這樣

text = "<h1>This is an h1 tag</h1>"; 

東西只是爲了看看我是否可以返回一些HTML,但只是打印出整個字符串文字,而不是一個h1標籤。

任何幫助表示讚賞!

+1

使用.text()將只將其設置爲字符串。 ' –

+0

太棒了!謝謝,我對jsp非常陌生,所以我仍然在查看文檔,看看它們是如何結合在一起的。我只是希望通過在我的servlet中設置一個表格我並沒有去掉MVC範例: -/ –

+0

如果你真的想把你的列表轉換成JSON字符串,那麼你可以在你的JS裏面的成功函數()中構建它。使用[GSON]非常簡單(http://code.google.com/p/google-gson/) –

回答

0

我在jQuery中的實現看到的唯一問題是「.text()」。相反,將其替換爲「div」的「.html()」,如下所示。

$("#dataDisp").html(responseText); 

此外,你可以有一個在名單上的環和建立與「TR」 S和「TD」 S表中的index.jsp文件,並返回相同的jQuery的。

希望這有助於!

+0

這太棒了!感謝@Praveen,我想你之前也曾幫助過我:)。 –

+0

完全沒有問題。不用客氣 :)!! – Praveen

0

如果你已經使用了jQuery HTML方法,而不是你所看到的H1文本方法正確顯示:

$("#dataDisp").html(responseText); 

做這樣的事情,這將是生成序列化JSON的最好方法字符串在服務器上,然後你可以遍歷JavaScript中的對象。此外,您可以使用JavaScript模板引擎(如鬍鬚)來構建表格,請參閱https://github.com/janl/mustache.js