DWR中Java方法的参数及返回值上篇

本文详细介绍了DWR框架的基本配置方法,包括如何在web.xml中配置DWR的servlet及其实现无刷新页面的效果。此外,还介绍了如何通过配置查看自动生成的测试页以及如何配置多个dwr.xml文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DWR是一个框架,简单的说就是能够在javascript直接调用java方法,而不必去写一大堆的javascript代码。它的实现是基于ajax的,可以实现无刷新效果。

网上有不少DWR的例子,但大都只是某种方法的调用,本文只在使用层面上介绍DWR,并不涉更多的技术与设计,其目的是让初学者能够很快的学会各种java方法在javascript中是如何调用的。

本文以DWR 1.1 为基础,对于DWR 2.0,因为还没有正式发布版,故不做介绍。


一、DWR配置篇之web.xml

1 、最小配置

Xml代码
  1. <servlet>  
  2.   <servlet-name>dwr-invoker</servlet-name>  
  3.   <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>  
  4. </servlet>  
  5. <servlet-mapping>  
  6.   <servlet-name>dwr-invoker</servlet-name>  
  7.   <url-pattern>/dwr/*</url-pattern>  
  8. </servlet-mapping>  

2、当我们想看DWR自动生成的测试页(Using debug/test mode)时,可在servlet配置中加上

Xml代码
  1. <init-param>  
  2.   <param-name>debug</param-name>  
  3.   <param-value>true</param-value>  
  4. </init-param>  

这个参数DWR默认是false。如果选择true,我们可以通过http://localhost:port/app/dwr 看到你部署的每个DWR class。并且可以测试java代码的每个方法是否运行正常。为了安全考虑,在正式环境下你一定把这个参数设为false。

 

3、多个dwr.xml文件的配置

可能有几种情况,我们一一列举。一个servlet,多个dwr.xml配置文件;多个servlet,每个servlet对应一个或多个dwr.xml配置文件。

3.1、一个servlet,多个dwr.xml配置文件

Xml代码
  1. <servlet>  
  2.     <servlet-name>dwr-invoker</servlet-name>  
  3.     <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>  
  4.     <init-param>  
  5.       <param-name>config-1</param-name>  
  6.       <param-value>WEB-INF/dwr1.xml</param-value>  
  7.     </init-param>  
  8.     <init-param>  
  9.       <param-name>config-2</param-name>  
  10.       <param-value>WEB-INF/dwr2.xml</param-value>  
  11.     </init-param>  
  12. </servlet>  

在这种配置下,param-name的值必须以config开头。param-name可以有>=0个。如果没有param-name,那么将会读取WEB-INF/dwr.xml。如果有大于零个param-name,那么WEB-INF/dwr.xml文件将不会被读取。

 

3.2 、多个 servlet ,每个 servlet 对应一个或多个 dwr.xml

Xml代码
  1. <servlet>  
  2.    <servlet-name>dwr-invoker</servlet-name>  
  3.     <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>  
  4. </servlet>  
  5. <servlet>  
  6.    <servlet-name>dwr-invoker1</servlet-name>  
  7.    <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>  
  8.    <init-param>  
  9.      <param-name>config-admin</param-name>  
  10.      <param-value>WEB-INF/dwr1.xml</param-value>  
  11.    </init-param>  
  12.    <init-param>  
  13.      <param-name>debug</param-name>  
  14.      <param-value>true</param-value>  
  15.    </init-param>  
  16. </servlet>  
  17. <servlet-mapping>  
  18. <servlet-name>dwr-invoker</servlet-name>  
  19.    <url-pattern>/dwr/*</url-pattern>  
  20. </servlet-mapping>  
  21. <servlet-mapping>  
  22.    <servlet-name>dwr-invoker1</servlet-name>  
  23.    <url-pattern>/dwr1/*</url-pattern>  
  24. </servlet-mapping>  

在这种情况下,我们可以根据 J2EE security 来控制权限,针对不同 url, 加不同的角色。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值