struts 如何去掉那多余的 actionform
而使用LazyValidatorForm
struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans>
<form-bean name="lazyForm" type="org.apache.struts.validator.LazyValidatorForm">
<form-property name="c1" type="java.lang.String[]" />
<form-property name="user" type="test.User" />
</form-bean>
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action attribute="lazyForm" input="index.jsp" name="lazyForm" parameter="method" path="/userAction" scope="request" type="test.UserAction" validate="false">
<forward name="addUser" path="/index.jsp" />
</action>
</action-mappings>
<message-resources parameter="test.ApplicationResources" />
</struts-config>
JSP
<%@ page language="java" pageEncoding="GBK"%>
<%@ taglib uri="/tags/struts-bean" prefix="bean"%>
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-logic" prefix="logic"%>
<html>
<head>
<title>JSP for lazyForm form</title>
</head>
<body>
<FORM name="form1" action="userAction.do" method="post" enctype="multipart/form-data">
用户名<INPUT type="text" name="user.name" value="testuser"><br>
年龄<INPUT type="text" name="user.id" value="1"><br>
密码<INPUT type="text" name="user.password" value="testpwd"><br>
文件<INPUT type="file" name="testfile" ><br>
选择1<INPUT type="checkbox" name="c1" value="1" checked >
选择2<INPUT type="checkbox" name="c1" value="2" checked ><br>
非用户信息<INPUT type="text" name="other" value="nonsense"><br>
<INPUT type="submit" name="method" value="addUser">
</FORM>
<logic:present name="lazyForm">
<bean:write name="lazyForm"/>
</logic:present>
</body>
</html>
Action
package test;
import javax.servlet.http.*;
import org.apache.commons.beanutils.*;
import org.apache.struts.action.*;
import org.apache.struts.actions.*;
import org.apache.struts.upload.*;
public class UserAction extends DispatchAction {
/**
* Method execute
*
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward addUser(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
DynaBean lazyForm = (DynaBean) form;
System.out.println(lazyForm.get("c1"));
System.out.println(((FormFile) lazyForm.get("testfile")).getFileSize());
System.out.println(lazyForm.get("user"));
return mapping.findForward("addUser");
}
}
分享到:
相关推荐
Struts1.2因其稳定性和广泛的功能集而在过去备受推崇,尤其在教育领域,许多教授和讲师推荐使用它作为教学和项目开发的基础。 Struts框架的核心特性包括: 1. **ActionServlet**:这是Struts框架的入口点,负责...
这个文档包含了Struts1.2的所有公共接口、类和方法的详细说明,是开发者日常编码的重要参考资料。通过查阅API,你可以快速找到特定类的功能、构造函数、方法签名以及使用示例,从而提高开发效率。 在实际整合过程中...
Struts1.2、Spring2.5和Hibernate3.2是经典的Java企业级开发框架组合,它们各自在应用程序的不同层次上发挥着重要作用。Struts1.2是一个MVC(Model-View-Controller)框架,主要负责处理用户界面与业务逻辑之间的...
2. `docs`目录:文档资料,包括API参考、用户指南等,帮助开发者理解Struts1.2的工作原理和使用方法。 3. `examples`目录:包含了一些示例应用,展示了Struts1.2的各种功能和最佳实践,是学习和调试的好材料。 4. `...
此外,手册会涵盖ActionForm、ActionMapping、ActionForward等核心组件的使用方法。ActionForm用于封装HTTP请求参数,ActionMapping定义了请求与Action之间的映射,ActionForward则用来指定请求处理后的转发路径。 ...
Struts1.2是Apache软件基金会的Jakarta项目下的一个开源框架,...文档中的实例、教程和API参考可以帮助读者快速掌握Struts1.2的使用方法,提升开发效率。投入时间深入学习,无疑会为你的Java Web开发技能树添砖加瓦。
Struts1.2是该框架的一个早期版本,虽然现在已经被Struts2所取代,但在许多遗留系统中仍然广泛使用。本教程将深入探讨Struts1.2的核心概念、功能以及与Struts2的区别。 一、Struts框架基础 1. **MVC模式**:Struts...
此外,使用Maven或Ivy等构建工具可以帮助管理Struts1.2及其依赖,使得项目更加模块化和可维护。 至于"unicom"这个文件名,可能是指一个具体的案例或示例项目,它可能包含了处理Struts1.2表单提交的代码和配置。如果...
Struts1.2是一款历史悠久且广泛使用的Java Web框架,它基于Model-View-Controller(MVC)设计模式,为开发人员提供了构建动态、数据驱动的Web应用的强大工具。该框架在2004年首次发布,是Apache软件基金会的一个项目...
Struts1.2标签库包含了一系列与ActionForm、Action、Message资源、表单验证、国际化等相关的标签,这些标签使得开发者能够更高效地构建用户界面。例如,`<s:textfield>`用于创建输入字段,`<s:submit>`用于提交表单...
Struts 1.2版本是在其早期版本的基础上进行改进和增强的,它在社区的广泛使用中积累了丰富的经验和反馈。 **Struts 1.2的核心特性:** 1. **ActionServlet**:作为Struts框架的心脏,ActionServlet负责处理所有的...
使用Struts 1.2 的开发者需要注意的是,尽管该版本具有一定的稳定性和广泛的社区支持,但随着时间的推移,它已经不再维护,存在安全漏洞。因此,对于新项目,推荐使用更现代的框架,如Struts 2或Spring MVC。然而,...
这份"Struts 1.2 API详细讲解"文档很可能会涵盖这些组件的详细说明、使用示例以及最佳实践,对于想要深入学习Struts 1.2的初学者来说,是一份不可多得的学习资料。通过系统地学习和实践,你可以逐步掌握如何利用...
本文将详细介绍Struts1.2中的拦截器使用以及相关的插件。 首先,我们需要理解拦截器的工作原理。拦截器在Action调用前后执行,形成一个拦截链。当一个请求到达时,Struts框架会按照配置的顺序依次调用这些拦截器,...
Struts1.2是一个经典的Java Web框架,由Apache软件基金会开发。它提供了MVC(Model-View-Controller)设计模式的实现,使得开发者能够更方便地构建可维护、可扩展的Web应用程序。在这个"struts1.2简单文件上传例子...
Struts1.2是一个经典的Java Web开发框架,它在早期的Web应用开发中扮演了重要角色,尤其是在MVC(Model-View-Controller)设计模式的实现上。本项目"基于Struts1.2的上传下载Demo"是针对该框架的一个实践示例,旨在...
同时,结合提供的文档,可以更好地理解框架的设计理念和使用方法。文档通常会包含详细的API参考、教程和最佳实践,对于初学者和进阶开发者都非常有用。在实际项目中,理解源代码有助于自定义扩展和解决遇到的问题,...
Struts1.2.jar包是基于Java的Web应用程序开发中的一个关键组件,它属于Apache Struts框架的一个版本。Struts是一个开源的MVC(Model-View-Controller)框架,用于构建可维护、可扩展和高度结构化的Web应用程序。在...
ActionForm是Struts 1.2中用于处理用户输入数据的核心组件,它负责在用户界面(JSP)与控制器(Action)之间传递数据。表单验证是确保用户提交的数据符合业务规则和数据完整性的重要环节。 在Struts 1.2中,...