1>导入dwr.jar文件
2>首先在web.xml中添加如下配置
<servlet>
<servlet-name>DwrServlet</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>DwrServlet</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
3>在WEB-INFO下创建dwr.xml
配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
"http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
<allow>
<!-- 将java类转化成js文件 -->
<!-- creator new 新建 javascirpt 创建的js文件名-->
<create creator="spring" javascript="shoppeDao">
<!-- value 类名 将哪个java类进行转换 -->
<param name="beanName" value="shoppeDao"></param>
<!----> <include method="getSpListByBrandId"/>
</create>
<convert match="com.noly.meirenkan.entity.Shoppe"
converter="bean">
<!--
<param name="include" value="id,award_type_code,award_name"></param>
-->
</convert>
</allow>
</dwr>
4>在页面中引入
<script type="text/javascript" src="/dwr/engine.js"></script>固定文件
<script type="text/javascript" src="/dwr/interface/shoppeDao.js"></script>在dwr配置中生成的js文件名
5>以对象形式操作返回数据
<script type="text/javascript">
function loadShoppe(){
var id=$("#brandId").val();
//shoppeDao在dwr文件中通过spring的bean注入
//getSpListByBrandId在dwr中配置的执行方法
shoppeDao.getSpListByBrandId(id,callbackM);
}
//回调函数
var callbackM=function(datas){
//alert(datas);
var tbd=$("#sp_tbody");
$(tbd).children().empty();
for(var i=0; i<datas.length; i++){
var shoppe=datas[i];
var sbid=shoppe.brandId;
var bname='';
<%
List<Brand> brands = (List<Brand>)
request.getSession().getAttribute("brands");
for(Brand b:brands){
%>
if (sbid=='<%=b.getId()%>') {
bname='<%=b.getCnName()%>'=='null'?'<%=b.getEnName()%>':'<%=b.getCnName()%>';
}
<%
}%>
var pv=shoppe.province==null?shoppe.city:shoppe.province==''?shoppe.city:shoppe.province;
var nm=shoppe.name==null?'暂无':shoppe.name;
$(tbd).append("<tr><td><input type=\"checkbox\" name=\"ckedShoppe\" value=\""+shoppe.id+"\"/></td><td>"
+ bname+
"</td><td>" +pv+ "</td><td>" + shoppe.city + " </td><td>" + nm +
" </td><td>"+shoppe.address+"</td></tr>");
}
}
</script>