zoukankan      html  css  js  c++  java
  • [JavaEE] DWR框架简介

    DWR框架简介
    DWR框架是一个可以允许你去创建AJAX WEB站点的JAVA开源库。它可以让你在浏览器的JavaScript代码中调用Web服务器的Java代码,就像Java代码在浏览器中一样。DWR工作原理是通过动态把Java类生成JavaScript,让使用者感觉调用就像发生在浏览器端。

    2、DWR的使用场合
    当我们的业务需要在页面不提交的情况下访问服务器端并实现页面数据局部刷新时,我们就可以使用DWR。

    3、DWR的使用步骤
    1、导入dwr的jar包

    2、编写一个dwr框架在页面中用JavaScript要调用到的java类。

    3、配置web.xml文件,将以下内容配置到web.xml中
      <servlet>
          <servlet-name>dwr-invoker</servlet-name>
          <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
          <init-param>
            <param-name>debug</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>

    4、配置dwr.xml
    创建一个dwr.xml文件,将它放在web.xml所在的WEB-INF目录下。
    该文件在dwr的jar包中可以找到,里面的dtd导入语句可以拷贝过来。
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd">
    <dwr>
        <allow>
           <create creator="new" javascript="testClass" >
            <param name="class" value= "com.entity.DwrClass" />
            <include method="sayHello"/>
        </create>
             <convert converter="bean" match="com.entity.BookType">
                      <param name="include" value="tname,desc" />
             </convert>          
       </allow>
    </dwr>

    5、编写jsp页面,用javascript调用后台的java代码
    ⑴在页面中引入以下javascript脚本
    <script type="text/javascript" src="dwr/interface/MyHelloWorld.js" ></script>
    <script type="text/javascript" src="dwr/engine.js" ></script>
    <script type="text/javascript" src="dwr/util.js" ></script>
    其中的第一句是由DWR框架在运行时自动生成的,dwr/是一个虚拟的路径,我们并不能真是的看到这个文件的存在。后面两句中的js文件在dwr的jar包中可以找到,需要把这两个文件复制到WebRoot/dwr文件夹中,这里也可以不取名叫dwr,但为了保持和前面自动生成的虚拟文件夹路径一致,所以我们也给它取名叫dwr。
    ⑵编写javascript调用后台java代码。如果从后台获取了返回值,还可以通过DOM技术将值表现在页面上,这时页面并不会被全局刷新,只是局部发生改变,可以极大提高用户体验。

    --------------------------------------

    欢迎您,进入 我系程序猿 的cnBlog博客。

    你不能改变你的过去,但你可以让你的未来变得更美好。一旦时间浪费了,生命就浪费了。

    You cannot improve your past, but you can improve your future. Once time is wasted, life is wasted.

    --------------------------------------

    分享到QQ空间  

  • 相关阅读:
    About
    Git
    SQL
    fiddler
    Windows下----nvm的安装操作
    vs-code 的常用插件
    npm安装依赖时-S和-D的作用以及区别
    Node.js的安装以及包的安装使用
    JavaScript-----设计模式
    JavaScript-----JS的深拷贝和浅拷贝
  • 原文地址:https://www.cnblogs.com/jqmtony/p/4099243.html
Copyright © 2011-2022 走看看