码迷,mamicode.com
首页 > 其他好文 > 详细

DWR(四):创建器

时间:2016-03-10 14:13:20      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:

创造器的格式

 <create creator=". . ." javascript=". . ." scope=". . .">
          <param name=". . ." value=". . ."/>
          <auth role=". . ." method=". . ."/>
          <exclude method=". . ."/>
          <include method=". . ."/>
 </create>

 属性介绍:

creator : 指定创建实例所使用的创建器;

javascript : 指定Java对象创换成JavaScript后的对象名称;

scope : 

 

<exclude method=". . ."/> : 黑名单,暴露给JavaScript方法不包括 method=". . ."中的参数;

<include method=". . ."/> : 白名单,暴露给JavaScript方法仅包括 method=". . ."中的参数;

 

 <create />标签的 creator 属性:指定创建实例所使用的创建器;

Dwr默认情况下提供的创建器的类型

--new :

 该创建器使用new关键字创建Java实例。   

<create creator="new" javascript="AdminManager">
      <param name="class" value="com.devan.test.admin.AdminManager"/>
 </create>

Dwr将是用无参的构造器创建com.devan.test.admin.AdminManager实例,并将实例暴露给客户端JavaScript代码。com.devan.test.admin.AdminManager实例转换成了名字为AdminManager的JavaScript对象。这样我们就可以是客户端调用com.devan.test.admin.AdminManager中的方法;

--none :

不创建任何对象。(该创建器本人没明白到底怎么使用)

应用情况:

①:如果使用的对象不是来自当前的page.而是来自session或是application,这个对象可能已经存在了,那么无需再次创建各个对象。

②:如果别调用的Java方法是静态的方法,调用静态方法是无需创建对象实例的,所以此时也无创建对象。Dwr会在调用创建器之间检查一下这个方法是否是静态的。

使用none创建器是,仍然需要<param.../>子元素,并且<param.../>子元素的class属性、value属性是不可缺少的,通过这两个属性来指定Dwr的操作对象的类型。

 

--scripted  :

使用脚本语言,如BeanShell或Groovy通过BSF(Bean Scripting Framework)创建实例;

 

例如:(本人没搞明白)

<!-- 使用BSF来创建Java实例 -->
    <create creator="script" javascript="EmailValidator">
       <!-- 指定动态语言的类型 -->
      <param name="language" value="beanshell"/>
      <!-- 指定Java对象的脚本 -->
      <param name="script">
          import org.apache.commons.validator.EmailValidator;
          return EmailValidator.getInstance();
      </param>
    </create>

 

--spring :

直接使用Spring容器中的Bean,用于Dwr与Spring的整合;

--jsf :

直接使用JSF容器中的Bean,用于Dwr与JSF的整合;

--struts :

直接使用struts容器中的Bean,用于Dwr与struts的整合;

--pageflow :

直接访问Weblogic或是Beenhive的PageFlow;

 

DWR(四):创建器

标签:

原文地址:http://www.cnblogs.com/devan/p/5260920.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!