DWR 教程 使用攻略[一].

介绍之前先简单的说说DWR,

Direct web remoting, 从字面意思上来说, 就是重定向Web请求的远程调用, DWR是一个Ajax框架, 提供web页面与服务器端资源的交互,且在不Refresh page和 Reload page 的情况下工作, 它封装了JavaScript调用服务器端程序的步骤, 灵活的配置使我们开发人员更容易得心应手.

 

 

DWR 规范:

 

1, 处理请求的Java类.

     Note: 这个Class和我们普通的业务逻辑处理类一样,没有什么特别的地方.

2, 配置必须的dwr.xml 文件(Java 开发中说得很多的,配置,配置,再配置.^_^)

     DWR 的配置文件的节点介绍,

     dwr.xml 以一对符合XML文件规范的标签 <dwr></dwr>开始和结束, 中间包含<allow></allow>和<signatures></signatures>标签,我们的主要配置工作在<allow></allow>中执行, 里面是Dwr的核心配置信息,也就是说, allow标签中没有任何东西时 , 我们什么事也做不了.这是因为DWR框架的工作特性决定的,DWR内置API中存在对js对象和java对象的创建器和转换器, 工作需要时对两种对象进行转换, 这就是DWR的核心工作职责; allow 里面包含 convert 和 create 标签, 这两个子节点是转换器和构建器的标识,如下:

DWR提供的创建器有以下几个:

new ,提供使用new关键字创建java实例.(使用最广泛的)

none, 不创建任何实例

scripted, 使用脚本语言创建实例.

spring, 直接使用spring容器中的bean.用于dwr和spring的整合.

jsf: 直接使用Struts和FormBean创建实例. 用于dwr和struts整合.

pageflow. 直接访问weblogic或beehive的pageflow中的Bean.

ejb3, 通过该创建器,dwr可以直接使用ejb3.0中的sessionBean..

A, 创建器中的属性:

 javascript:创建器构建成功后暴露給Client的js对象..

 scope:指定Java实例的生命周期. 可以选择 application. session. request. page.

 param:指定创建器创建java实例的参数.

 include:指定需要暴露的方法.

 enclude:与include方法功能相反. 指定不被暴露給Client的方法.

B, 转换器

DWR提供了基础数据类型的转换器. 所以我们在配置相关转换器时不需要对基础数据类型进行转换. boolean,byte,short,int,long,float,double,char,和基础类型的原始类型. e.g : java.lang.Boolean..等等.

 

对象转换器 converter属性.

bean: 缺省值为false. 默认是关闭的.使用时必须在dwr.xml文件中显式的打开该转换器. 才可以在java方法中使用对应的javaBean实例作为参数或返回值.

Object: 与bean转换器的作用完全相同,都是用于完成Java对性和JSON格式的javascript对象之间的转换, 但Object的功能更强大.Object通过Java的反射机制来访问java对象的属性,使用时, 无需提供Java对象相关属性的getter和setter方法也可访问该对象属性.而Bean转换器则需要Java对象提供对应属性的getter和setter方法才能访问具体属性.

 

数组转换器: 默认是打开的. 只要符合对象集合的Java集合和JS集合都可以互相转换.

 

集合转换器: Collection, map. 默认也是打开的.无需添加配置到dwr.xml文件中.两种转换器可以互相包含对方. 也就是说, collection集合里面的元素可以是map集合, 而map集合里面的元素也可以是collection集合..支持递归转换集合里面的内容.

 

 

介绍到这里, 还没有給大家说convert 的作用, convert的功能就是为creator服务. 提供参数的转换.可以这样说. create提供了Java对象到JS对象的转换, 而 convert则提供了Java对象和javascript之间的转换.

 

小卡暂时介绍到这里. 需要的朋友. 请关注第二部分的用法介绍..

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值