最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
害怕别人乱输数据吗?提高你的数据校验功能-AJAX输入校验(8)
时间:2008-04-28 编辑:简简单单 来源:一聚教程网
7.4 AJAX输入校验
Struts 2框架在使用客户端校验的时候,由于需要转换为JavaScript脚本,所以并不是所有服务器端的校验规则均能转换为客户端校验,而AJAX校验则可以使用所有的服务器端校验规则。
AJAX是一种新兴的技术,主要特点是可以异步处理用户请求,例如,用户在填写一个表单的时候,当填写完一个文本框后,该文本框失去焦点的同时,会异步地完成同服务器的交互,提示校验信息,而不是所有表单填写完后单击“提交”按钮时显示校验信息。
在这里笔者简单演示一个示例,让读者体验AJAX的特点,关于AJAX的详细内容,读者可以参考本书后面的介绍。
7.4.1 配置AJAX环境
下面笔者按照建立顺序,引导读者配置AJAX环境。
1.安装dwr-1.1-beta-3.jar文件
Struts 2框架要整合AJAX,需要一个JAR文件,读者可以在Struts 2的struts2-showcase-
struts2-showcase-
2.dwr.xml文件
建立一个dwr.xml配置文件,该文件保存在同web.xml相同的目录下,在该文件中加入如下内容:
"-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
"http://www.getahead.ltd.uk/dwr/dwr10.dtd">
import java.util.Map;
import org.apache.struts2.validators.DWRValidator;
DWRValidator.doPost(String, String, Map
]]>
该文件内容为固定格式。
3.web.xml文件
在web.xml文件中加入相关配置内容,修改后的内容如代码7.20所示。
代码7.20 加入AJAX配置的web.xml
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
org.apache.struts2.dispatcher.FilterDispatcher
至此,一个简单的AJAX环境便搭建完成了。
7.4.2 建立业务控制器
建立一个简单的业务控制器实现类,如代码7.21所示。
代码7.21 AJAX校验示例的业务控制器
package ch7;
import java.util.Date;
import com.opensymphony.xwork2.ActionSupport;
public class Reg_ajax_Action extends ActionSupport {
private String name;
private int age;
private Date birthday;
//属性的getter和setter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
该Action非常简单,只是定义了3个相应的属性。在配置文件中加入如下内容:
7.4.3 建立校验规则文件
建立一个Reg_ajax_Action-validation.xml校验规则文件,如代码7.22所示。
代码7.22 AJAX校验示例的校验规则文件
1.0.2//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
13
19
该校验规则文件也是一个标准的校验规则文件。
7.4.4 建立JSP视图
建立一个reg-ajax.jsp视图文件,如代码7.23所示。
代码7.23 AJAX校验示例的JSP视图
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
上一个:
关于JAVA匿名类和内部类的一点讨论
相关文章
热门栏目
-
php教程
php入门 php安全 php安装 php常用代码 php高级应用 -
asp.net教程
基础入门 .Net开发 C语言 VB.Net语言 WebService -
手机开发
安卓教程 ios7教程 Windows Phone Windows Mobile 手机常见问题 -
css教程
CSS入门 常用代码 经典案例 样式布局 高级应用 -
网页制作
设计基础 Dreamweaver Frontpage js教程 XNL/XSLT -
办公数码
word excel powerpoint 金山WPS 电脑新手 -
jsp教程
Application与Applet J2EE/EJB/服务器 J2ME开发 Java基础 Java技巧及代码