dwr返回list并以table动态显示

首先在eclipse里新建一个web项目,并引入dwr.jar和common—logging.jar,接着开始写代码吧

web.xml

<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>dwr-invoker</servlet-name> <display-name>DWR Servlet</display-name> <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>false</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> </web-app>

dwr.xml

<create creator="new" javascript="DwrTest"> <param name="class" value="com.dwr.list.DwrTest"/> </create> <convert match="com.dwr.list.Admin" converter="bean" > <param name="include" value="id,admin_Name,admin_Pwd,mark_id" /> </convert>

Admin.java

/** * */ package com.dwr.list; /** * @author cyang * */ public class Admin { private int id; private String admin_Name; private String admin_Pwd; private int mark_id; /** * */ public Admin() { super(); // TODO Auto-generated constructor stub } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getAdmin_Name() { return admin_Name; } public void setAdmin_Name(String admin_Name) { this.admin_Name = admin_Name; } public String getAdmin_Pwd() { return admin_Pwd; } public void setAdmin_Pwd(String admin_Pwd) { this.admin_Pwd = admin_Pwd; } public int getMark_id() { return mark_id; } public void setMark_id(int mark_id) { this.mark_id = mark_id; } }

DWRTest.java

/** * */ package com.dwr.list; import java.util.List; /** * @author cyang * */ public class DwrTest { TestDao dao = new TestDao(); public List<Admin> Send(int mark) { return dao.Send(mark); } }

TestDao,我这里方便大家模拟查询数据库,其实是自造的数据哦。

/** * */ package com.dwr.list; /** * @author cyang * */ public class Admin { private int id; private String admin_Name; private String admin_Pwd; private int mark_id; /** * */ public Admin() { super(); // TODO Auto-generated constructor stub } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getAdmin_Name() { return admin_Name; } public void setAdmin_Name(String admin_Name) { this.admin_Name = admin_Name; } public String getAdmin_Pwd() { return admin_Pwd; } public void setAdmin_Pwd(String admin_Pwd) { this.admin_Pwd = admin_Pwd; } public int getMark_id() { return mark_id; } public void setMark_id(int mark_id) { this.mark_id = mark_id; } }

接下来就是页面的展现了,我把jsp和js放在一起,方便大家:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>DWR </title> <mce:script type="text/javascript" src="dwr/interface/DwrTest.js" mce_src="dwr/interface/DwrTest.js"></mce:script> <mce:script type="text/javascript" src="dwr/engine.js" mce_src="dwr/engine.js"></mce:script> <mce:script type="text/javascript" src="dwr/util.js" mce_src="dwr/util.js"></mce:script> <mce:script type="text/javascript"><!-- function CallBack(data) { if (data.length == 0) { alert("参数传递出现错误!"); }else{ for(var i=0;i<data.length;i++){ addRow(data[i].admin_Name,data[i].admin_Pwd,data[i].mark_id); // 表格添加一行 } } } function Send(mark){ DwrTest.Send(mark,CallBack); } function showTable(mark){ var i=1; for(i=form1.maxrow.value; i>0 ; i--) { deleteRow(i); } form1.maxrow.value = 0; Send(mark); // 通过mark参数来判断要动态显示的内容 } function deleteRow(index){ var tableObj=document.getElementById("mytable"); tableObj.deleteRow(index); } function addRow(username,password,mark_id){ var tableObj=document.getElementById("mytable"); var newRowObj=tableObj.insertRow(tableObj.rows.length); var newColName=newRowObj.insertCell(newRowObj.cells.length); var newColPwd=newRowObj.insertCell(newRowObj.cells.length); var newColMrk=newRowObj.insertCell(newRowObj.cells.length); newColName.innerHTML=username; newColPwd.innerHTML=password; newColMrk.innerHTML=mark_id; form1.maxrow.value = parseInt(form1.maxrow.value) + 1; } // --></mce:script> </head> <body> <form name="form1" > <p align="center"> <input type="button" value="用户类别一 " οnmοuseοver="showTable(1)"> <input type="button" value="用户类别二" οnmοuseοver="showTable(2)"> <input type="button" value="用户类别三" οnmοuseοver="showTable(3)"> <input type="button" value="用户类别四" οnmοuseοver="showTable(4)"> </p> <table width="50%" id="mytable" border="1" bordercolor="whitesmoke"> <tr align="center"><td>用户名</td><td>密码</td><td>类别</td></tr> </table> <input type="hidden" name="maxrow" value="0"> </form> </body> </html>

大功告成,运行一下试试吧,我试过了可以的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值