dwr官网案例

篇一:DWR经典实例两个

测试调试的两个DWR应用实例

简单DWR实例

java文件中的数据异步刷新到jsp页面,实现了局部刷新,java数据与javascript数据的交换。 数据库连接DWR实例

连接数据库,利用DWR异步刷新将数据插入到person表的username,password字段中。

开发工具:windows7,myeclipse

需要事先准备的环境:jdk1.6,tomcat7.0,mysql5.0

辅助工具:mysql-front

详细操作

简单DWR实例

(1) DWR环境配置 下载dwr.jar和commons-logging-1.0.4.jar,把它放到你的webapp的WEB-INF/lib目录下。(不能缺少,缺少会出错,这个包可以在struts-2.0.11.2-all.zip中找到,你可以去struts下载struts-2.0.11.2-all.zip。)

(2) 配置文件web.Xml

<?xmlversion="1.0"encoding="UTF-8"?>

<web-appversion="3.0"

xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">

<display-name></display-name>

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>

<!-- dwr config -->

<servlet>

<servlet-name>dwr-invoker</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-invoker</servlet-name>

<url-pattern>/dwr/*</url-pattern>

</servlet-mapping>

<!-- end of dwr -->

(3) </web-app>新建配置文件dwr.Xml(位置与web.xml相同) <?xmlversion="1.0"encoding="UTF-8"?>

<!DOCTYPEdwrPUBLIC"-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN""http://getahead.org/dwr/dwr30.dtd">

<dwr>

<allow>

<!-- simple text javascript ? -->

<createcreator="new"javascript="JHello">

<paramname="class"value="net.mzzo.dwr.test.HelloWorld"/>

<includemethod="sayHello"/>

</create>

</allow>

</dwr>

(4) Java文件编写(文件状况如右下图)

Src文件目录下net.Mzzo.dwr.test下新建java文件(new->class),HelloWorld.Java. .

package net.mzzo.dwr.test;

publicclass HelloWorld {

public String content1;

public String content2;

public String sayHello(String name){

content1=name;

content2="人生如梦";

return"页面输入的内容:"+name+",赋值给java成员:"+content1+",自赋值成员:"+content2;

}

}

(5) Index.jsp

<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>

<!DOCTYPEHTMLPUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN"> <html>

<head>

<title>Hello World!</title>

<scripttype='text/javascript'src='dwr/engine.js'></script> <scripttype='text/javascript'src='dwr/util.js'></script>

<!-- JHello是dwr.xml -->

<scripttype='text/javascript'src='dwr/interface/JHello.js'></script> <scripttype="text/javascript">

function hello(){

var

name;

name=document.getElementById("g1").value;

JHello.sayHello(name,haolejiawo);

}

function haolejiawo(serverReturnString){

alert(serverReturnString);

dwr.util.setValue("g2", serverReturnString);

}

//var name = dwr.util.getValue("demoName");

// dwr.util.setValue("demoReply", data);

</script>

</head>

<body>

<divstyle="margin:auto; width:50%;">

<inputtype="text"id="g1"value="Hello World">

<inputtype="button"onclick="hello()"value="submit">

<divstyle="border:solid 1px #ccc; margin-top:20px;" id="g2"></div> </div>

</body>

</html>

(6) 部署进服务器并启动,浏览器输入http://localhost:

数据库连接DWR实例

(1) mysql数据库名称为test1,新建数据表

(2) create table person(

(3) username varchar(20) primary key,

(4) password varchar(20)

(5) );

导入mysql的jdbc包

person

篇二:dwr的简单讲解和例子

Dwr

1.流程

1.1流程

1.搭建好dwr的环境,配置好配置文件

2.在页面上写一个javascript函数

3.在后台java代码来完成指定的业务逻辑并输出

4.用前台编写的javascript函数来获取后台结果及时进行善后处理(也就是我们要在页面中显示我们期望达到的效果)

1.2流程图

2.例子

例如:客户注册时的客户编号的验证 1. 页面的输入框

<td align="right" width="10%" nowrap="true">

客户编号 </td> <td width="20%"> <s:textfield name="client.code"

cssClass="TextInput" id="code" onfocus="show_message('msg_code','2','请输入编号!');"

onblur="out_code()"/><!—onblur中触发的方法为我们在javascript中编写的函数方法 -->

<div style="display:show" id="msg_code" class="box_div_right"></div></td>

2. 页面中javascript代码

<script type='text/javascript' src='dwr/interface/client.js'></script> //这里src中的地址前面“dwr/interface/”不改变,后面的client.js名字要和我们在、//dwr.xml中配置文件中 <create creator="spring" javascript="client">中的//javascript中一样

<script type='text/javascript' src="dwr/engine.js"></script>

<script type="text/javascript">

var textCode;

if(trimString(textCode.value).length>0&&trimString(textCode.value

} client.findClientByCode(textCode.value,callBack); show_message('msg_code','0','编号不能为空且长度不能超过3位!codeChk=false; var codeChk=false; function init(){ textCode=document.getElementById("code"); textCode.focus(); } function out_code(){ codeChk=false; <script type='text/javascript' src="dwr/util.js"></script> ).length<4){ }else{');

} function callBack(data){ codeChk=false; if(data=="true"){ show_message('msg_code','0','输入的编号

['+textCode.value+'重复,请重新输入!]');

codeChk=false;

<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet- <!-- 指定处于开发阶段的参数 --> <init-param><param-name>debug</param-name> <param-value>true</param-value> class>} }else{} show_code('msg_code','1','输入正确'); codeChk=true; window.onload=init; </script> <!-- Ajax框架的配置 引入DWR的servlet --> <servlet> <servlet-name>dwr</servlet-name> 3. web.xml配置文件 </init-param> </servlet> <servlet-mapping><servlet-name>dwr</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> <!-- 客户编码重复验证 --> <create creator="spring" javascript="client"><param name="beanName" value="clientAction" /> 4. dwr.xml配置

<!-- value="clientAction" 这是我们action的名字 -->

<include method="findClientByCode" />

</create>

5. struts.xml中配置

<action name="clientAction" class="clientAction">

<!-- class="clientAction" 这是我们applicationContex.xml中action的名字 -->

6. applicationContex.xml中配置

<bean name="clientDao" class="com.zdsoft.slmsdemo.dao.ClientDao" parent="baseDao" />

<bean name="clientService" <property name="clientDao" ref="clientDao" /> class="com.zdsoft.slmsdemo.service.impl.ClientServiceImpl"> </bean> <bean name="(本文来自:WwW.xiaOCaofAnweN.Com 小草范文 网:dwr官网案例)clientAction" <property name="clientService" ref="clientService" /> class="com.zdsoft.slmsdemo.action.ClientAction" > </bean>

7. ClientAction.java中的查询编号的方法findClientByCode

//查询一个code的方法

public String findClientByCode(String code){

} System.out.print(code+"code"); if(clientService.findClientByCode(code)){} return "true"; return "false"; }else{

8.ClientService.java实现接口

public boolean findClientByCode(String code);

9.ClientServiceImpl.java中的方法

public boolean findClientByCode(String code){

} return clientDao.findClientByCode(code);

10.ClientDao.java中查询的方法

//从数据库中查询code,并返回一个true 或者false

public boolean findClientByCode(String code) {

} DetachedCriteria criteria.add(Restrictions.eq("code",code)); List<Client> client=findByCriteria(criteria); boolean b=false; if(client.size()>0){ } return b; b=true; criteria=DetachedCriteria.forClass(Client.class);

篇三:dwr3.0简单实例_1

1. 环境

myEclipse,dwr3.0,mysql;

2. 创建类User

3. 创建类UserDao :保存查找用户

4. DWR组件

DWR组件,提供javaScript访问的,需要将该类配置到dwr.xml中。

5. 创建jsp页面

function saveFun(data) { if(data) { alert("注册成功!"); }else{

alert("登陆ID已经存在..."); } } function onsave() { var userMap={}; userMap.id=regForm.id.value; userMap.name=regForm.name.value; userMap.password=regForm.password.value; userMap.email=regForm.email.value; DwrUserAccess.save(userMap,saveFun); } function findFun(data) { if(data==null) {alert("无法找到用户:"+queryForm.id.value); return; } alert("找到用户,

id:"+data.id+",name:"+data.name+",password:"+data.password+",email:"+data.email);

}

function onfind()

{

DwrUserAccess.find(queryForm.id.value,findFun) }

</script>

6. web.xml配置

7. dwr.xml配置