dwr简单应用实例
其实刚开始接触dwr时就感觉它与ajax实现的功能很像,后来才了解dwr本身就是对ajax的一个封装框架。如果一个项目中需要大量用到ajax功能,我建议可以使用此框架,原因是方便很方便。以下是我用dwr框架写的一个实例:
1.首先要导入dwr.jar包,同时,dwr依赖于commons-logging.jar这个包,所以此包也要引入,如果要与spring框架整合,还要导入spring.jar
2.配置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> 如果要与spring整合,也要加入spring相关配置 <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:*.xml</param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> 3.配置dwr.xml <allow> <!-- 加include可以具体指定java类中关的方法,不加则默认类中全部为public的方法--> <create creator="new" javascript="testDWR2"> <!-- param name="beanName" value="testDWR2" />--> <param name="class" value="com.test.TestDWR2"></param> <include method="testFun"/> </create> </allow> <create>标签是dwr中重要的标签,用来描述 java(服务器端) 与 javascript (客户端)的交互方式。其中,creator和javascript是必须属性,其他可以忽略。creator包含有以下几个值: new:Java用“new”关键字创造对象 none:它不创建对象 (v1.1+) scripted:通过BSF使用脚本语言创建对象,例如BeanShell或Groovy spring:通过Spring框架访问Bean struts:使用Struts的FormBean (v1.1+) jsf:使用JSF的Bean (v1.1+) pageflow:访问Weblogic或Beehive的PageFlow (v1.1+) ejb3:使用EJB3 session bean (v2.0+) 如果要与spring整合则dwr.xml 如此配置并且要在spring.xml文件中配置相关bean <!--加include可以具体指定java类中关的方法,不加则默认类中全部为public的方法--> <create creator="spring" javascript="testDWR2"> <param name="beanName" value="testDWR2" /> <include method="testFun"/> </create> spring.xml中配置: <bean id="testDWR2" class="com.test.TestDWR2"></bean> 4.在jsp中引入js
其中engine.js必须要,如果需要用到dwr提供的一些方便的工具要引用util.js ,然后是dwr自动生成的js文件,名字必须和dwr.xml中create标签的javascript属性值一样,且是dwr/interface开头的目录 5.接下来就可以分别写javascript和java代码了 <script type="text/javascript"> function testFun2() { var name ='aaaaa'; testDWR2.testFun(name,returnFun); //调用java方法,第二个参数是回调函数 } function returnFun(data) { //data对应着java方法的返回值 alert(data); } </script> package com.test; public class TestDWR2 { public String testFun(String str) { str += "bbb"; return str; } } 到此经过以上几步就可以实现dwr的基本功能了,至于更深层次的应用,就要去看api或是网上查询了。 6.补充 1)dwr可以设置是否采用异步方式访问java代码,其代码为:
源代码下载:http://download.csdn.net/detail/u012255097/9766150 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |