Struts2 XML配置实现输入校验详解

需积分: 3 2 下载量 9 浏览量 更新于2024-08-18 收藏 152KB PPT 举报
"这篇资源主要介绍了如何在Struts2框架中使用XML配置方式实现输入校验,以及Struts2开发所需的必备JAR包和启动配置。" 在Struts2框架中,实现输入校验是保证应用程序数据完整性和安全性的重要步骤。通常,我们会使用基于XML的配置文件来进行这一操作。Action类需要继承自`ActionSupport`,这样可以利用Struts2提供的验证机制。在给出的示例中,我们创建了一个XML验证文件,其内容如下: ```xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.dtd"> <validators> <field name="username"> <field-validator type="requiredstring"> <param name="trim">true</param> <message>用户名不能为空!</message> </field-validator> </field> </validators> ``` 这个XML文件定义了对`username`字段的验证规则。`field-validator`元素指定了验证类型,这里是`requiredstring`,确保字段值不是空字符串。`param`元素的`trim`参数设置为`true`,意味着在验证前会先移除字段值两端的空白字符。`message`元素则定义了当验证失败时向用户显示的错误信息。 为了使Struts2能找到这个验证文件,它需要与Action类放在同一包下,并且遵循特定的命名规则:`ActionClassName-validation.xml`,其中`ActionClassName`是Action类的简单类名。比如,如果Action类名为`cn.itcast.action.UserAction`,那么验证文件应命名为`UserAction-validation.xml`。 开发Struts2应用时,需要依赖一系列的JAR文件,这些文件可以从Apache Struts官方网站下载。基础的开发环境至少需要以下JAR包: 1. `struts2-core-2.x.x.jar`: Struts2框架的核心库,包含核心功能和组件。 2. `xwork-2.x.x.jar`: XWork库,作为Struts2的基础。 3. `ognl-2.6.x.jar`: 对象图导航语言(OGNL),Struts2用来处理对象和表达式的绑定。 4. `freemarker-2.3.x.jar`: FreeMarker模板引擎,用于生成动态HTML页面。 5. `commons-logging-1.1.x.jar`: 通用的日志包,支持Log4J和JDK1.4+的日志记录。 6. `Commons-fileupload`: 用于处理文件上传的库。 此外,如果需要与其他第三方框架如Spring集成,还需要相应插件的JAR文件,如`struts2-spring-plugin-2.x.x.jar`。 在Struts2的启动配置方面,与Struts1.x不同,Struts2框架是通过Filter而非Servlet启动的。在`web.xml`中,需要配置`FilterDispatcher`过滤器,如下所示: ```xml <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ``` 这里的`filter-name`定义了过滤器的名称,而`filter-class`指定使用的是Struts2的`FilterDispatcher`。`url-pattern``/*`意味着所有请求都将通过Struts2框架处理。 Struts2通过XML配置文件实现了灵活的输入校验,并通过特定的Filter配置来启动和管理框架,为开发者提供了强大而全面的Web应用开发支持。