欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

DWR3.0与Spring MVC集成方法,dwr3.0mvc,DWR(Direct W

来源: javaer 分享于  点击 43240 次 点评:168

DWR3.0与Spring MVC集成方法,dwr3.0mvc,DWR(Direct W


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@RemoteProxypublic 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 如果能看到如下界面,说明配置成功:

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);
相关栏目:

用户点评