DWR3.0与Spring MVC集成方法

DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样。

1.集成步骤

    1.1 添加pom依赖         

<dependency>
<groupId>org.apache.geronimo.bundles</groupId>
<artifactId>dwr</artifactId>
<version>3.0.M1_1</version>
</dependency>

    1.2  web.xml修改,添加dwr-servlet

<!-- dwr servlet -->
 < servlet >
  < description >dwr-invoker</ description >
  < servlet-name >dwr-invoker</ servlet-name >
  < servlet-class >org.directwebremoting.servlet.DwrServlet</ servlet-class >
        < init-param >
        < param-name >classes</ param-name >
        < param-value >com.panguso.op.data.manager.service.general.GeneralContentManagementService</ param-value >
    </ init-param >
    < init-param >
        < param-name >debug</ param-name >
        < param-value >true</ param-value >
    </ init-param >
    < init-param >  
            < param-name >crossDomainSessionSecurity</ param-name >  
            < param-value >false</ param-value >  
        </ init-param >
 </ servlet >
 < servlet-mapping >
  < servlet-name >dwr-invoker</ servlet-name >
  < url-pattern >/dwr/*</ url-pattern >
 </ servlet-mapping >

 1.3  标注需要引用的类,如这里添加的GeneralContentManagementService

@Service
@RemoteProxy
public class GeneralContentManagementService {
     private ContentManagementServiceAPI contentManageAPI = ContentManagementServiceAPI.getInstance(); 
     private ResourceManagementServiceAPI resManageAPI = ResourceManagementServiceAPI.getInstance();
 
     private static BeanSchemaServiceAPI beanServiceAPI = BeanSchemaServiceAPI.getInstance();
 
     /**   * 判断一个类型的beanSchema是否保存在mysql中 
     *   
     * @param dataType 数据类型  
     * @param beanSchemaName beanSchema名称  
     * @return  
     * @author fangqi  
     * @date 2013-6-4  
     */ 
     @RemoteMethod 
     public boolean checkBeanSchemaIsInMySql(String dataType, String beanSchemaName)
     {  
         List<BeanSchema> beanSchemas = beanServiceAPI.getMergedBeanPropertiesByDataType(dataType);
         for (BeanSchema beanSchema : beanSchemas)
         {   
             if (beanSchema.getEname().equals(beanSchemaName))
             {    
                 if (beanSchema.getIsStoredInMysql())
                 {      return true ;    
                 }   
             }  
         }
         return false
     }

配置完成后,启动tomcat应用,输入地址   http://localhost:8180/<webappname>/dwr 如果能看到如下界面,说明配置成功:

 

2.使用步骤

   2.1  在需要调用的jsp文件添加js引用

<!-- 第一个为你需调用的java类的名称+.js -->
<script type= 'text/javascript' src= 'dwr/interface/GeneralContentManagementService.js' ></script>
 
<!-- 第二三个为通用,都要加-->
<script type= 'text/javascript' src= 'dwr/engine.js' ></script>
<script type= 'text/javascript' src= 'dwr/util.js' ></script>

  2.2  js中使用

//判断所选的字段是否存在mysql中,如果不存在,返回        
dwr.engine.setAsync( false );    
for ( var i = 0; i < groupFields.length; i++) {        
     var callback = function (data){           
         if (!data) {                
             alert( "选择分组字段" + groupFields[i] + "没有保存在mysql中,不能用来作为分组字段" );            
         }        
     };                 
 
     GeneralContentManagementService.checkBeanSchemaIsInMySql(dataType, groupFields[i], callback);    
}    
dwr.engine.setAsync( true );
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值