当前位置: 首页 > 图文教程 > 网络编程 > Javascript > DWR Ext 加载数据

Javascript
jquery 操作单选框,复选框,下拉列表实现代码
js 数组实现一个类似ruby的迭代器
JavaScript 组件之旅(一)分析和设计
JavaScript 组件之旅(二)编码实现和算法
JavaScript 组件之旅(三):用 Ant 构建组件
JavaScript 组件之旅(四):测试 JavaScript 组件
小议javascript 设计模式 推荐
浅谈javascript 面向对象编程
javascript 时间比较实现代码
js apply/call/caller/callee/bind使用方法与区别分析
JavaScript 全角转半角部分
jquery 选择器部分整理
Firebug 字幕文件JSON地址获取代码
jQuery 判断元素上是否绑定了事件
javascript实现的距离现在多长时间后的一个格式化的日期
javascript 面向对象,实现namespace,class,继承,重载
javascript 通过封装div方式弹出div窗体
JScript 脚本实现文件下载 一般用于下载木马
JavaScript 工具库 Cloudgamer JavaScript Library v0.1 发布
网页禁用右键实现代码(JavaScript代码)

Javascript 中的 DWR Ext 加载数据


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 316 ::
收藏到网摘: n/a

在Ext中直接使用DWR 一,在Ext中直接使用DWR
1,PoJO的Manager类为
复制代码 代码如下:

public class CustomerManagerImpl extends HibernateDaoSupport implements CustomerManager {
public PageModel allCustomers() {
PageModel pageModel = new PageModel();
List datas = new ArrayList();
int total ;
String hql = "from Customer";
datas = this.getHibernateTemplate().find(hql);
String countHql = "select count(*) from Customer";
total = ((Long)this.getSession().createQuery(countHql).uniqueResult()).intValue();
pageModel.setDatas(datas);
pageModel.setTotal(total);
return pageModel;
}
}

2,那么直接调用DWR取得数据为(dwr.xml代码参考后面)
复制代码 代码如下:

var store = new Ext.data.Store({
//data:... 这里有DWR调用直接得到
reader:new Ext.data.JsonReader({id:"sn"},fields), //List数据
sortInfo:{field:'name', direction:'ASC'}// 排序信息
});
//DWR+EXT整合的句子, store.loadData(dataslist);加载数据
//data返回的是PageModel类,属性为total,datas(List数据类型)
//这里不用建立函数,直接执行
JCustomerManager.allCustomers(function(data) {
var total = data.total;
var dataslist=data.datas; //数据为List类型
store.loadData(dataslist); //加载数据
});

3,这里的DWR只做一件事,通过匿名函数,将返回的值的List数据直接注入给store。DWR返回的data可以被JsonStore直接读取,我们需要设置对应的fields参数,以告诉JsonReader需要哪些属性。
4,补充dwr.xml代码
复制代码 代码如下:

<dwr>
<allow>
<!-- dwr+spring 注入方式-->
<create creator="spring" javascript="JCustomerManager">
<param name="beanName" value="customerManager"/>
</create>
<!-- 使用到的类要用到转换器-->
<convert match="com.graduate.crm.PageModel" converter="bean"></convert>
<convert match="com.graduate.crm.model.CompanyCustomer" converter="bean"></convert>
</allow>
</dwr>