如何用Ajax传递一个对象集合到jsp页面。-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

如何用Ajax传递一个对象集合到jsp页面。

2016-07-04 11:27:32 3516 1

我想在我的web项目(struts2+hibernate)的首页的页面输出数据库的News这个表的内容,请问具体的代码是怎样的,我都快点疯了。

附我自己写的代码,及供参考,可忽略

在servlet中:

public void getNewsList(HttpServletRequest request,
 HttpServletResponse response) throws ServletException, IOException {
 response.setContentType("application/xml"); // 设置响应类型为XML
 response.setCharacterEncoding("GBK"); //设置响应的编码方式
PrintWriter out = response.getWriter();
 ConnDB conn=new ConnDB();
 String sql="SELECT * FROM News";
 ResultSet rs=conn.executeQuery(sql); //
 List newsList=new ArrayList();
 try {
 News n=new News();
 while(rs.next()){
 n.setId(rs.getInt("id"));
 n.setTitle(rs.getString("title"));
 newsList.add(n);
 }
 } catch (SQLException e) {
 e.printStackTrace();
 }
 conn.close(); //
 /****************通过Dom4j将获取的最新用户信息输出到XML文档中****************/
Document document = DocumentHelper.createDocument();
 Element returnValue= document.addElement("returnValue");
 document.setRootElement(returnValue); // 将returnValue设置为根节点
Element e_newsList=returnValue.addElement("NewsList"); //添加newUser节点
e_newsList.setData(newsList);
 XMLWriter output;。。。。。
output.flush();
 }

在JSP页面中:

javascript中:
function getUserInfo(){
 var loader_List=new net.AjaxRequest("NewsListServlet?action=getNewsList&nocache="+new Date().getTime(),deal_getNewsList,onerror,"GET");//实例化Ajax对象
}
function deal_getNewsList(){
 var objXml=this.req.responseXML; //获取返回的XML数据
var newsList = objXml.getElementsByTagName("newsList")[0].firstChild.data; //获取
document.getElementById("newsList").innerHTML=newsList; //显示
}
timer=window.setInterval(getUserInfo,60000); //每隔1分钟获取一次
取消 提交回答
全部回答(1)
  • 杨冬芳
    2019-07-17 19:50:34
    public void getNewsList(HttpServletRequest request,
     HttpServletResponse response) throws ServletException, IOException {
     response.setContentType("application/xml"); // 设置响应类型为XML
     response.setCharacterEncoding("GBK"); //设置响应的编码方式
    PrintWriter out = response.getWriter();
     ConnDB conn=new ConnDB();
     String sql="SELECT * FROM News";
     ResultSet rs=conn.executeQuery(sql); //
     List newsList=new ArrayList();
     try {
     News n=new News();
     while(rs.next()){
     n.setId(rs.getInt("id"));
     n.setTitle(rs.getString("title"));
     newsList.add(n);
     }
     } catch (SQLException e) {
     e.printStackTrace();
     }
     conn.close(); //
     response.setHeader("cache-control","no-cache");
                    PrintWriter out=response.getWriter();
                out.print("<?xml version='1.0' encoding='UTF-8'?>");
                                    out.print("<root>"); 
    for(int i=0;i<newList.size();i++){
    out.print("<NewList>");
    out.print("<Id>")
    out.print(newList.get(i).getId());
    out.print("</Id>");
    out.print("<Title>");
    out.print(newList.get(i).getTitle());
    out.print("</Title>");
    out.print("</NewList>");
    
    }
    out.print("</root>");
    out.flush;
    out.close;
    
    0 0
相关问答

1

回答

用 jquery ajax 实现点击图片提交form问题

2016-07-29 10:38:02 2026浏览量 回答数 1

1

回答

关于jquery ajax返回的 net::ERR_CONNECTION_RESET错误怎么获取到

2016-07-14 14:10:19 8725浏览量 回答数 1

1

回答

Action中写入返回值后, 前台jQuery ajax 执行error, 不执行success

2016-07-14 15:03:31 1638浏览量 回答数 1

1

回答

使用jquery ajax传递到后台调试发现data数据为空

2016-07-14 16:13:31 3619浏览量 回答数 1

1

回答

jquery中的ajax的请求出现问题

2016-07-14 16:58:18 1995浏览量 回答数 1

1

回答

jquery ajax 提交Struts2请求 action的namespace问题

2016-07-13 14:39:40 1661浏览量 回答数 1

1

回答

JQuery ajax传递的参数是数组该如何弄呀,接收页如何去接收数组?

2016-07-13 15:38:22 1874浏览量 回答数 1

1

回答

kindeditor4.0版在jquery ajax下使用请教

2016-07-13 15:51:50 1398浏览量 回答数 1

1

回答

jquery ajax 后台返回值 到前台不会处理了

2016-07-12 15:20:52 1697浏览量 回答数 1

1

回答

关于ajax jquery分页的问题,求大神!!

2016-07-12 15:26:42 1677浏览量 回答数 1
+关注
杨冬芳
IT从业
1
文章
9167
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载