DWR

来源:互联网 发布:excel表格自动生成数据 编辑:程序博客网 时间:2024/05/19 03:41
 

DWR实现无刷新增删改查操作   

首先介绍DWR,DWR属于Ajax的一个小型框架技术

原理方面也不过多介绍了,直接来实用的东西

使用DWR你必须要有DWR.jar包,然后加上commons-logging-1.0.4.jar包

继续配置web.xml文件,代码如下:

    <servlet>

        <servlet-name>dwr-invoker</servlet-name>

       <servlet-class> org.directwebremoting.servlet.DwrServlet </servlet-class>

       <init-param>

           <param-name>debug</param-name>

           <param-value>true</param-value>

       </init-param>

       <init-param>

           <param-name>pollAndCometEnabled</param-name>

           <param-value>true</param-value>

       </init-param>

       <init-param>

           <param-name>allowGetForSafariButMakeForgeryEasier</param-name>

           <param-value>true</param-value>

       </init-param>

    </servlet>

    <servlet-mapping>

       <servlet-name>dwr-invoker</servlet-name>

       <url-pattern>/dwr/*</url-pattern>

    </servlet-mapping>

然后再来配置dwr.xml文件

一般来说,配置文件需要下列属性

<allow>

           <create javascript="" creator="">

              <param name=""></param>

              <include method=""/>

           </create>

           <convert match="" converter="">

              <param name=""></param>

           </convert>

</allow>

如果是在spring管理的那么,在creator属性应该写为creator=”spring” ,相反则为new。

后面的东西就差不多一样了,JavaScript属性填写自己以后将要用的js新名称,

Param标签内 name属性标识为class,value属性配置自己的方法类路径

Include标签内 method属性填写自己以后要用于无刷新的方法名称

Convert标签内 match属性填写要用到的实体类路径  converter属性为bean

Param标签内 name属性填写include,value属性填写实体类属性名

现贴出我的dwr配置文件,供参考:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"

    "http://www.getahead.ltd.uk/dwr/dwr20.dtd">

    <dwr>

       <allow>

           <create javascript="newDwr" creator="new">

              <param name="class" value="com.dao.impl.NewsDaoImpl" />

              <include method="addNews"/>

              <include method="delNewsById"/>

              <include method="updateNewsById"/>

              <include method="getNewsById"/>

              <include method="getNewLists"/>

              <include method="getTotal"/>

           </create>

           <convert match="com.entity.News" converter="bean">

              <param name="include" value="id,newTitle,newContent,newTime" />

           </convert>

       </allow>

    </dwr>

配置完这些,相信大家的方法也写好了,那现在就进入JSP内填写,需要说明的是,在JSP页面内必须要加入下列代码:

<!-- 导入dwr的系统js文件  不用改变 -->

       <script type='text/javascript' src='<%=path %>/dwr/engine.js'> </script>

       <script type='text/javascript' src='<%=path %>/dwr/util.js'> </script>

 

<!-- 导入后台java代码生成的js代码     其中  newDwr和dwr中配置的 javascript一样   -->

       <script type='text/javascript' src='<%=path %>/dwr/interface/newDwr.js'> </script>

将这些导入后,就可以开始写入JavaScript函数了

现在就以根据ID删除一则记录为例

页面有如下代码:<a href=”#”>删除</a>

拓展代码如下:

<a href=”javascript:delNewsById(‘${list.id}’);”>删除</a>

因此可写JavaScript函数为:

<script type="text/javascript" >

       Function delNewsById(obj){

              Var id=obj;

              newDwr.delNewsById(id);

}

</script>

 

现在就可以运行一次了,无刷新的删除就完成了

原创粉丝点击