DWR 与 SPRING 集成配置

来源:互联网 发布:网络录像机安装教程 编辑:程序博客网 时间:2024/05/16 17:36
webx中dwr与spring组合使用说明
========================================


web.xml 中的配置
------------------------------------------------------------------
<servlet>
        <servlet-name>dwr-invoker</servlet-name>
        <display-name>DWR Servlet</display-name>
        <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>false</param-value>
        </init-param>
        <init-param>
            <param-name>logLevel</param-name>
            <param-value>WARN</param-value>
        </init-param>
    </servlet>

    <servlet-mapping>
        <servlet-name>dwr-invoker</servlet-name>
        <url-pattern>/dwr/*</url-pattern>
    </servlet-mapping>
------------------------------------------------------------------




首先,建立dwr.xml文件 如下
------------------------------------------------------------------
<dwr>
    <allow>
        <create creator="spring" javascript="AjaxAllData">
            <param name="beanName" value="ajaxAllData"/>
            <exclude method="setAjaxAllData"/>
        </create>

        <convert converter="bean" match="mywebx.vo.DatatableVO">
            <param name="include" value="name,createDate" />
        </convert>
    </allow>
    
    <!--处理范式时需要-->
    <signatures>
      
      <![CDATA[
         import java.util.*;
         import com.ce.dpos.stock.stockaccount.vo.*;
          import com.ce.dpos.stock.stockaccount.service.impl.*;
             AjaxiniWrhAccountService.IniWrhAccountupdate(List<IniWrhAccountVO> list);
      ]]>
  </signatures>
</dwr>
-----------------------------------------------------------------------------------------------------------




接着,在spring-conf 文件夹下,建立spring-ajax.xml文件 如下
------------------------------------------------------------------
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       default-autowire="byName"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

       <bean id="ajaxAllData" class="mywebx.service.impl.AjaxDatatableService">
               <property name="ajaxAllData">
                   <ref bean="datatableService"/>
               </property>
               <property name="goodsInfoService">
                   <ref bean="goodsinfoService"/>
               </property>
       </bean>
</beans>


说明:在AjaxDatatableService.java类中,建立两个实例对象

    private IDatatableService ajaxAllData;
    private IGoodsinfoService goodsInfoService = null;

    所以:

    <property name="ajaxAllData">      <!-- mywebx.service.impl.AjaxDatatableService中,实例对象ajaxAllData 由datatableService 注入对象-->
           <ref bean="datatableService"/> <!-- 关联到daoContext.xml 对应的bean -->
    </property>
    <property name="goodsInfoService">
        <ref bean="goodsinfoService"/>
    </property>
------------------------------------------------------------------





然后,java类中的返回
------------------------------------------------------------------
    public DatatableVO findById(Integer id){
        return ajaxAllData.findById(id);
    }

    说明:与dwr.xml 的convert配置对应,如:
        <convert converter="bean" match="mywebx.vo.DatatableVO">
            <param name="include" value="name,createDate" />
        </convert>
------------------------------------------------------------------





最后,jsp文件中的使用
------------------------------------------------------------------
<script type='text/javascript' src='/WebxWithConponent/dwr/engine.js'></script>
<script type='text/javascript' src='/WebxWithConponent/dwr/util.js'></script>
<script type='text/javascript' src='/WebxWithConponent/dwr/interface/AjaxAllData.js'></script>



    function selectConfirm(id)
    {
        AjaxAllData.findById(id,confirm);            //说明:1.第一个参数,为查询条件; 2.第二个参数,回调函数句柄
        selectOption.style.display = "none";
    }

    function confirm(data)
    {
        var name = document.getElementById("name");
        var createDate = document.getElementById("createDate");

        name.value = data.name;
        createDate.value = data.createDate;
    }

原创粉丝点击