加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

DWR3.0与Spring MVC集成方法

发布时间:2020-12-16 01:00:25 所属栏目:百科 来源:网络整理
导读:DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。它可以允许在 浏览器 里的代码使用运行在 WEB服务器 上的JAVA函数,就像它就在浏览器里一样。 1.集成步骤 1.1 添加pom依

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

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

@Service
@RemoteProxy
public class GeneralContentManagementService {
private ContentManagementServiceAPI contentManageAPI = ContentManagementServiceAPI.getInstance();
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
boolean checkBeanSchemaIsInMySql(String dataType,String beanSchemaName)
{
List<BeanSchema> beanSchemas = beanServiceAPI.getMergedBeanPropertiesByDataType(dataType);
for (BeanSchema beanSchema : beanSchemas)
{
if (beanSchema.getEname().equals(beanSchemaName))
{
(beanSchema.getIsStoredInMysql())
{ return true ;
}
}
}
false ;
}

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

2.使用步骤

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

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

2.2 js中使用

//判断所选的字段是否存在mysql中,如果不存在,返回
dwr.engine.setAsync( false );
for ( var i = 0; i < groupFields.length; i++) {
callback = function (data){
if (!data) {
alert( "选择分组字段" + groupFields[i] + "没有保存在mysql中,不能用来作为分组字段" );
}
};
GeneralContentManagementService.checkBeanSchemaIsInMySql(dataType,groupFields[i],callback);
}
true );

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读