簡體   English   中英

使用Ajax將arraylist作為對象從操作類返回到Java中的jsp?

[英]Return arraylist as object from action Class to jsp in Java Using Ajax?

我如何使用Ajax將Acton的ArrayList返回到JSP。 我能夠從數據庫中獲取值並進行迭代並將其存儲在ArrayList中。 但是我不確定如何從Action返回列表並在JSP代碼中對其進行迭代。 請找到下面的代碼

動作類:

    public ActionForward fetchValues(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
    try 
    {   
        PrintWriter out=response.getWriter();
        List coordinateList=new ArrayList();
        Connection con;
        String link=request.getParameter("test");
        con = DriverManager .getConnection("jdbc:postgresql://localhost:----/testDatabase", "test","test1");
        String sql="select placeNames from line_route where gid='"+test+"'";
        Statement stmt=con.createStatement();
        ResultSet rs = stmt.executeQuery(sql);
        while(rs.next())
        {
            String str = rs.getString(1);
            str = str.replaceAll("\\(", "");

            String[] a = str.split(",");
            for (String b : a) 
            {
                System.out.println("-" + b + "-");
                coordinateList.add(b);
            }
        }
        out.println(coordinateList);
        return null;

    } 
    catch (Exception e) 
    {
        System.out.println("Exception!");
        e.printStackTrace();
    }

return null;
}

JSP代碼:

function fetchValues()
{
var id=document.getElementById('linkNo').value;
initRequest();  
req.open("POST", "./sendLinks.do?actionMethod=fetchValues&link="+id, true);   
req.send(null); 
}

  var req; 
    function initRequest() 
    {    
        if (window.XMLHttpRequest) {    
            req = new XMLHttpRequest();    
        } else if (window.ActiveXObject) {    
            isIE = true;    
            req = new ActiveXObject("Microsoft.XMLHTTP");    
        }    
    }

要求大家作為我如何在JSP中獲取列表並在javascript代碼中進行迭代的指南。 提前致謝。

您可以使用JSON將arrayList轉換為Java腳本數組

您可以在JSP頁面內編寫此javascript函數(從響應中讀取列表之后)

var varlist= <%=net.sf.json.JSONSerializer.toJSON(coordinateList) %>;

如果您想使用純AJAX,建議您返回XML數據作為響應,並且可以解析,請參見下面的幫助鏈接

如何在jQuery中將從Servlet發送的arraylist數據解析為JSON

暫無
暫無

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

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