`

DWR例子2--调用后台带参数方法(返回复合数据类型)

阅读更多
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>DWRDemo.html</title>
	
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
	
	 <script type='text/javascript' src='/1102_DWR/dwr/interface/DWRDemo.js'></script>
 	 <script type='text/javascript' src='/1102_DWR/dwr/engine.js'></script>
 	 <script type='text/javascript' src='/1102_DWR/dwr/util.js'></script>
 	 <script type='text/javascript' src='jquery/jquery-1.6.1.js'></script>
 	
	
	 <script type="text/javascript">
 	 	jQuery.noConflict();
		
		/**
		 * 调用后台getArray()
		 * @param {Object} "#bt1"
		 */
		jQuery(function(){
			jQuery("#bt1").click(function(){
				
				DWRDemo.getArray(function(array){
					/*
					 * JS for循环遍历数组
					 
					for(var i=0; i<array.length;i++){
						alert(array[i]);
					}
					*/
					
					//JQuery each函数 循环遍历数组
					jQuery.each(array,function(i,n){
						alert(n);
						
					})
				});
			});
			
			/**
			 * 调用后台getList1()
			 */
			jQuery("#bt2").click(function(){
				
				DWRDemo.getList1(function(array){
				
					//JQuery each函数 循环遍历数组
					jQuery.each(array,function(i,n){
						alert(n);
						
					})
				});
			});
			
			/**
			 * 调用后台getList2()
			 */
			jQuery("#bt3").click(function(){
				
				DWRDemo.getList2(function(array){
			     		alert(array);
							
						for(var i=0;i<array.length;i++){
							for(var j=0;j<array[i].length;j++){
									alert(array[i][j]);
								}
						}
				});
			});
			
			/**
			 * 调用后台getList3()
			 */
			jQuery("#bt4").click(function(){
				
				DWRDemo.getList3(function(array){
			     		alert(array);
						
						/**
						 * 
						for(var i=0;i<array.length;i++){
							alert(array[i].id);
							alert(array[i].name);
						}
						*/	
						 
						 // for in 循环
						 for(var i in array){
						 	alert(array[i].id);
							alert(array[i].name);
						 }
						 
						 jQuery.each(array,function(i,stu){
						 	alert(stu.id);
							alert(stu.name);
						 })
				});
			});
			
			
			
			
			
			
			
		})
 	
	
	
	
	
	 </script>
	
  </head>
  
  <body>

    <input type="button" value="getArray()" id="bt1"> <br>
    <input type="button" value="getList1()" id="bt2"> <br>
    <input type="button" value="getList2()" id="bt3"> <br>
    <input type="button" value="getList3()" id="bt4"> <br>
  </body>
</html>

 dwr.xml配置

<?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="DWRDemo">
			<param name="class" value="com.wepull.dwr.DWRDemo"></param>
		</create>
		<convert match="com.wepull.dwr.Student" converter="bean"></convert>
	</allow>
</dwr>

 后台java

package com.wepull.dwr;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class DWRDemo {
	public String[] getArray(){
		String str[] = {"a","b","c",};
		return str;
	}
	public List<Integer> getList1(){
		List<Integer> list = new ArrayList<Integer>();
		list.add(1);
		list.add(2);
		list.add(3);
		
		return list;
	}
	public List<String[]> getList2(){
		List<String[]> list = new ArrayList<String[]>();

		String str1[] = {"a","b","c",};
		String str2[] = {"c","d","e",};
		list.add(str1);
		list.add(str2);
		return list;
	}
	public List<Student> getList3(){
		List<Student> list = new ArrayList<Student>();
		Student s1 = new Student();
		Student s2 = new Student();
		s1.setId(1);
		s1.setName("周立波");
		
		s2.setId(2);
		s2.setName("郭德纲");
		
		list.add(s1);
		list.add(s2);
		
		return list;
	}
	public Set<Student> getSet(){
		Set<Student> set = new HashSet<Student>();
		Student s1 = new Student();
		Student s2 = new Student();
		s1.setId(1);
		s1.setName("周立波");
		
		s2.setId(2);
		s2.setName("郭德纲");
		
		set.add(s1);
		set.add(s2);
		
		return set;
	}

}

 

分享到:
评论

相关推荐

    调用带JavaBean参数方法的DWR例子

    在“调用带JavaBean参数方法的DWR例子”中,我们将深入探讨如何使用DWR来调用包含JavaBean作为参数的方法。 首先,我们需要理解DWR的基本工作原理。DWR通过创建一个JavaScript接口,该接口映射到服务器上的Java类和...

    dwr dwr项目 js 调用 java 后台 方法 js调用java后台方法 后台方法 异步

    `myMethod`即Java后台的某个方法名,`param1`和`param2`是参数,`function(response)`是回调函数,用于处理服务器返回的数据。 6. **异步调用** DWR默认采用异步模式,这意味着JavaScript调用Java方法不会阻塞...

    整理好的DWR-2.0.5-src

    这个不是我的原创,原文件出至这里:...原资源包含了,源代码和API Doc,只是美中不足的是没有整理成可用的zip文档,我这特分离了一下,并重新打好包了,初步测试了一下能用。

    springboot整合dwr实现js调用java方法

    SpringBoot整合Direct Web Remoting (DWR)是一个常见的技术实践,它允许JavaScript在浏览器端直接调用服务器端的Java方法,极大地增强了Web应用的交互性。在这个过程中,我们通常会结合使用FreeMarker或JSP作为视...

    dwr-1.1.3-src.zip

    2. **编译**:DWR通过动态生成JavaScript文件,这些文件包含了对服务器端方法的引用,使得客户端可以直接调用。 3. **交互**:在客户端,JavaScript代码可以直接调用这些生成的函数,就像它们是本地函数一样,DWR会...

    DWR入门程序---计算输入的两个数之和.rar

    - 编写`Calculator.java`,定义`add(int num1, int num2)`方法,返回两个参数的和。 - 生成`dwr-generate.js`,确保`Calculator`类和`add`方法被映射。 - 在`index.html`中,引入`dwr-engine.js`和`dwr-generate....

    Dwr例子带注释

    - DWR Engine接收到请求后,根据`dwr.xml`配置调用相应的Java方法。 - 服务器执行Java方法,返回结果。 - DWR将结果转换成JSON或XML格式,并发送回浏览器。 - JavaScript回调函数处理返回的结果,更新DOM元素。 ...

    dwr 例子

    - 通过`MyService`对象调用后台方法,如`myService.myMethod(param1, param2, callback)`,这里的`callback`是处理服务器响应的回调函数。 4. **AJAX通信**: - DWR使用AJAX技术在后台执行Java方法,然后将结果...

    Ext tree 结合dwr 调用后台数据

    将`Ext tree`与`DWR`结合,意味着前端的树形视图可以通过DWR直接调用后台的Java方法来获取或更新数据。例如,当用户展开树的一个节点时,前端可以发送一个DWR调用,请求后台填充该节点的子节点数据。后台处理请求后...

    DWR使用方法-step by step

    2. **重载方法的不确定性**:当服务器端有多个重载方法时,DWR可能无法确定调用哪个方法,这可能导致不可预测的行为。 #### 五、总结 通过本文的详细介绍,我们了解了DWR的基本安装与配置过程,以及在使用过程中...

    dwr 各种调用方法

    如`callTestMethod2`函数中,调用`testMethod2`并传递`callBackFortestMethod2`作为回调函数,当Java方法执行完毕后,`callBackFortestMethod2`会接收到返回的数据。 3. **有简单参数的Java方法调用** 参数的传递...

    DWR框架对各种类型方法调用的示例

    在"DWR框架对各种类型方法调用的示例"中,我们可以看到DWR是如何处理不同类型的参数和返回值的。以下是对这些示例的详细解析: 1. **无参方法调用**: 当你需要调用一个不接受任何参数的后台方法时,DWR提供了简便...

    dwr.jar/dwr-2.0.5-src.zip/dwr.zip

    2. **dwr-2.0.5-src.zip**: 这是DWR 2.0.5版本的源代码压缩包,对于开发者来说,源代码是非常宝贵的资源。通过查看源代码,开发者可以深入理解DWR的工作原理,定制和扩展其功能,或者排查遇到的问题。源代码还包含...

    struts2-dwr-plugin-2.2.3.jar

    struts2与dwr结合的工具之一,这个是新从官方网站下载的,与大家分享,希望对你们有效。

    DWR中各种java方法的调用

    ### DWR中各种Java方法的调用:深入解析与实践 DWR,全称为Direct Web Remoting,是一个创新的框架,旨在简化JavaScript调用Java方法的过程。它利用Ajax技术,实现了网页上的动态交互,无需页面刷新即可更新内容,...

    dwr入门 -- 03 -- 结合Spring

    2. **DWR的配置**:学习如何在Web应用的配置文件中添加DWR的相关配置,如`dwr.xml`,定义哪些Java类和方法可供JavaScript调用。 3. **DWR的使用步骤**:了解创建DWR的三个主要步骤:生成JavaScript接口、编写Java...

    dwr 前台调用后台的java类 hello

    《DWR:前台调用后台Java类的"Hello, World!"实践详解》 Direct Web Remoting(DWR)是一个开源的Java库,它允许Web应用程序在浏览器和服务器之间进行实时的、安全的通信,实现JavaScript与Java代码的交互。DWR简化...

    dwr-2.0.5-src.rar

    在解压"Dwr-2.0.5-src.rar"后,你会得到一个名为“dwr-2.0.5-src”的文件夹,这个文件夹中包含了以下关键知识点: 1. **源码结构**:DWR的源代码通常会按照模块进行组织,如核心库、安全模块、测试用例等。通过分析...

Global site tag (gtag.js) - Google Analytics