一,在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>
推荐阅读
用JavaScript实现单继承和多继承的简单方法
JavaScript就其本质是函数式编程语言,是Lisp的后代,同时又加入了一下面向对象编程的元素,放弃了一些难懂的函数式语言的元素。 函数式编程语言可以实现面向对象编程,这是毫无疑义的,Curry方法可以实现对类和对>>>详细阅读
本文标题:DWR Ext 加载数据
地址:http://www.17bianji.com/kaifa2/JS/28880.html
1/2 1