`
serenity
  • 浏览: 62461 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

转: 数据校验功能-AJAX输入校验(9)上

阅读更多

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 2struts2-showcase-2.0.11应用示例中找到,在该示例中lib目录下有一个dwr-1.1-beta-3.jar文件,将该文件复制到当前Web应用的WEB-INF\lib目录下。

 注意 

struts2-showcase-2.0.11为一个war压缩文件,读者可以解压该文件来获得dwr-1.1- beta-3.jar

 

2dwr.xml文件

建立一个dwr.xml配置文件,该文件保存在同web.xml相同的目录下,在该文件中加入如下内容:

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE dwr PUBLIC 

    "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" 

    "http://www.getahead.ltd.uk/dwr/dwr10.dtd"
>

<dwr>

    
<allow>

        
<create creator="new" javascript="validator">

            
<param name="class" value="org.apache.struts2.validators.DWRValidator"/>

        
</create>

        
<convert converter="bean" match="com.opensymphony.xwork2.ValidationAware Support"/>

    
</allow>

    
<signatures>

        
<![CDATA[

        import java.util.Map;

        import org.apache.struts2.validators.DWRValidator;

        DWRValidator.doPost(String, String, Map<String, String>);

        
]]>

    
</signatures>

</dwr>

 

 说明 

该文件内容为固定格式。

 

3web.xml文件

web.xml文件中加入相关配置内容,修改后的内容如代码7.20所示。

代码7.20  加入AJAX配置的web.xml

 

<?xml version="1.0" encoding="UTF-8"?>

<web-app id="WebApp_9" version="2.4"

    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">

    
<display-name>Struts Blank</display-name>

    
<!--配置Struts 2的核心filter-->

    
<filter>

        
<filter-name>struts2</filter-name>

        
<!--配置Struts 2的核心实现类-->

        
<filter-class>

            org.apache.struts2.dispatcher.FilterDispatcher

        
</filter-class>

    
</filter>

    
<filter-mapping>

        
<!--拦截所有的URL请求-->

        
<filter-name>struts2</filter-name>

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

    
</filter-mapping>

    
<!--配置欢迎界面-->

    
<!-- 配置Struts2的核心Servlet -->

    
<servlet>

        
<servlet-name>dwr</servlet-name>

        
<!-- 指定Servlet的实现类 -->

        
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>

        
<!-- 指定处于开发阶段 -->

        
<init-param>

            
<param-name>debug</param-name>

            
<param-value>true</param-value>

        
</init-param>

    
</servlet>

    
<!-- 指定DWR的核心Servlet拦截的URL -->

    
<servlet-mapping>

        
<servlet-name>dwr</servlet-name>

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

    
</servlet-mapping>

    
<welcome-file-list>

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

    
</welcome-file-list>

</web-app>

 

至此,一个简单的AJAX环境便搭建完成了。

 

分享到:
评论

相关推荐

    异步校验jquery-ajax

    本工程有两种ajax异步校验注册时输入的username是否与数据库中的值重复,通过mybatis实现数据库,通过servlet或者struts2实现控制层,通过ajax,jquery,json,实现异步校验

    基于SSM框架和Bootstrap的图书管理系统CRUD源码,支持数据校验与Ajax交互

    项目概述:本项目是一个基于SSM(Spring、SpringMVC、MyBatis)框架和Bootstrap的图书管理系统,实现了CRUD(创建、读取、更新、删除)功能,并提供数据校验机制及Ajax交互支持。主要开发语言为Java,辅以CSS和...

    ssh整合时常用的jar包

    2.输入输出包: commons-io-1.4.jar 3.日志包: commons-logging-1.0.4.jar 4.信息校验包: commons-validator-1.3.0.jar 5.ajax使用时需要加载的包:dwr.jar 6.freemarker使用时加载的包:freemarker-2.3.8.jar...

    ajax的异步校验功能实现

    总结,通过结合Ajax和jQuery,我们可以轻松实现一个高效且用户友好的异步校验功能,为用户提供实时反馈,提升他们的使用体验。在实际的WEB23项目中,可以参考上述步骤,根据具体的后端接口和业务逻辑进行相应的调整...

    下载-Ajax.pdf

    1. **数据验证**:在用户输入表单数据后,使用Ajax进行实时校验,提高数据的有效性。 2. **按需取数据**:根据用户的需求动态加载数据,避免一次性加载过多数据造成延迟。 3. **自动更新页面**:例如实时显示新闻、...

    Struts2--输入校验

    在Struts2中,输入校验是确保数据安全和应用程序功能正确性的重要环节。本文将深入探讨Struts2中的输入校验机制,包括其重要性、实现方式以及如何在实际项目中应用。 输入校验对于任何Web应用程序都是必不可少的,...

    Discuz7.0程序二次开发必备—目录详解

    - `ajax.php`:处理模板的AJAX请求和数据返回。 - `attachment.php`:处理附件下载功能。 - `announcement.php`:论坛公告的显示和处理。 - `config.inc.php`:存储论坛数据库配置,密码等关键信息,修改需谨慎...

    图文验证码(Ajax异步校验)-源码出自明日科技

    2. **Ajax异步校验**:Ajax(Asynchronous JavaScript and XML)是一种在不刷新整个页面的情况下与服务器交换数据并更新部分网页的技术。在这个验证码系统中,用户输入验证码后,Ajax技术被用来异步地向服务器发送...

    js数据校验控件

    //网页输入校验工具 //version:2.0 //作者:潘攀(1871870808@qq.com) //时间:2012-10-10 //需要依赖:jquery-1.7.2.js //支持校验类型:不为空、数字、非数字、邮箱、最大长度、最小长 度、起始字符、终止字符、...

    ajax实现二级下拉框和用户名校验

    Ajax可以在此场景中发挥作用,通过在用户输入时或输入结束后立即发送校验请求,而不必等待用户提交表单。 **实现步骤:** 1. 创建一个HTML输入框,用于用户输入用户名。 2. 使用JavaScript(可能结合事件委托)监听...

    jquery 校验的文档

    jQuery Validate插件提供了一系列内置的校验规则,这些规则能够帮助开发者快速实现表单数据的有效性检查。下面详细介绍这些规则及其用途: 1. **required**: 校验字段是否为空。 - 示例配置:`required: true` - ...

    报表开发工具Finereport移动端app js接口列表【全】

    - FineReport移动端的JS接口提供了丰富的功能,涵盖了报表的交互、数据校验、填报提交等多个方面,合理利用这些接口能够大大提高报表开发的效率和用户体验。 - 开发人员在实际应用这些接口时,还需要注意JS代码的...

    用户名校验(ajax技术)

    5. 安全性:Ajax并不提高安全性,仍需对用户输入进行验证和过滤,防止XSS(跨站脚本攻击)和CSRF(跨站请求伪造)。 6. 更新UI:在接收到服务器响应后,要确保在DOM安全的时间点更新UI,避免影响用户体验。 总结,...

    ssm-ajax.rar

    "ssm-ajax.rar"这个压缩包文件包含了关于如何将这三种技术整合,并实现基于Ajax的异步增删改查及登录功能的详细教程。本文将深入探讨这些技术的原理与应用。 首先,Spring框架是一个全面的后端开发解决方案,提供了...

    ajax实现提交时校验表单方法

    本文实例为大家分享了ajax提交时校验表单的方法,供大家参考,具体内容如下 方法一: 代码示例:  巧妙设计之处:ajax提交的话,不能够进行校验拦截,设置一个flag来判断,很巧妙的设计之处,故收藏! function ...

    案例_Ajax_用户名异步校验 源代码

    综上所述,这个Ajax用户名异步校验案例涉及了Web开发中的客户端脚本、服务器端交互、数据库查询等多个层面,是提升用户体验的重要技术实践。学习并理解这个案例,有助于开发者更好地掌握Ajax技术,并将其应用到实际...

    ext_表单提交_数据校验

    在Ext JS框架中,`Ext.form.TextField`是一种用于收集用户输入的基本控件,它提供了丰富的配置选项来实现数据校验。例如,在示例中,通过设置`allowBlank: false`,确保了字段不允许为空;`emptyText`定义了当字段为...

    Ajax 文件js日期校验

    j2ee,日期校验,Ajax,ajax,j2ee

Global site tag (gtag.js) - Google Analytics