dwr框架使用

1. 导jar包。dwr.jar和commons-logging-1.1.1.jar ( 此包若不导入,tomcat启动会报错 )
2. 写后台服务类。一个普通java类即可。HelloWorld.java
3. 在web.xml文件中配置dwr的servlet.如下:
<servlet>
<servlet-name>dwr</servlet-name>
	<servlet-class>org.directwebremoting.servlet.DwrServlet
</servlet-class>
		<init-param>
			<param-name>debug</param-name>
			<param-value>true</param-value>
		</init-param>
	</servlet>
	<servlet-mapping>
		<servlet-name>dwr</servlet-name>
		<url-pattern>/dwr/*</url-pattern>
	</servlet-mapping>

其中<url-pattern>/dwr/*</url-pattern>要这样写.
4. 在web-inf下创建一个xml文件。取名叫dwr.xml。该文件配置如下:
<dwr>
		<allow>
			<create  creator=”new”  javascript=” HelloWorld”> //红色部分为页面调用方法的名称
				<param  name=”class”  value=”test. HelloWorld”/>//红色字体为服务类路径
				
			</create>
		<convert  converter=”bean” match=”po.User”></convert> //返回类型需要在此配置
		<convert  converter=”bean” match=”po.Dog”></convert>
<allow>
</dwr> 

红色部分名称必须一致。dwr默认暴露Login.java中的所有public 方法
一个类只能写一个< create >标签,可写多个<convert>标签,基本数据类型不用配<convert>
5. jsp页面需要引进两个js,如下:

<script type='text/javascript' src='/Dwr/dwr/interface/ HelloWorld.js'>
</script>定义的dwr.xml文件里的HelloWorld
<script type='text/javascript' src='/Dwr/dwr/engine.js'></script>
红色字体Dwr为项目名,以及在dwr.xml中javascript属性的值
6. 在js中直接调用服务类方法:
<script type="text/javascript"> 
		    function firstDwr(){
		    	HelloWorld.sayHello("fendou",callBackHello);
		        HelloWorld.person("10",cbfp);//调用不同的方法
		        HelloWorld.Dog("xiaoxiao",cbfd);
		    	}
		    function callBackHello(data){alert(data);}
		    function cbfp(data){alert(data.age)};
		    function cbfd(data){alert(data.name)};
		    
		</script>



红色方法为回调函数,data参数接收服务类方法返回的参数。

猜你喜欢

转载自javafu.iteye.com/blog/1936099
dwr