`
lsong89
  • 浏览: 40908 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Struts DynaActionForm配置

阅读更多

为什么要有动态ActionForm呢?若在一个大型项目中,我们的ActionForm可能会很多,而使用动态ActionForm的话,我们就不需要去写那么多类文件了,我们可以直接在配置文件中配置所需要的ActionForm。
下面我们来看看如何配置动态ActionForm。首先我们创建一个JSP页面用于提交数据和显示数据。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>动态ActionForm测试</title>
</head>
<body>
<form action="dynaactionform.do" method="post">
用户名:<input type="text" name="userName"><br>
密码:<input type="password" name="password"><br>
<input type="submit" value="登录">
</form>
</body>
</html>

上面的代码中我们创建一个form表单,表单中有userName和password两项提交给dynaactionform.do进行处理。
接着创建我们的Action,其代码如下:

package cn.ineeke.dynamicactionform.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;
public class DynaFormAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
DynaActionForm dynaForm = (DynaActionForm)form;
System.out.println(dynaForm.get("userName"));
System.out.println(dynaForm.get("password"));
return mapping.findForward("success");
}
}

上面的DynaFormAction同样也是继承自Action这个类,而在execute方法中我们将前端控制器传给我们的form强制转换成DynaActionForm(动态ActionForm)类型,并调用其get方法输出各属性值,之后进行跳转。
接下来配置struts-config.xml文件,其内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="dynaForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="userName" type="java.lang.String"></form-property>
<form-property name="password" type="java.lang.String"></form-property>
</form-bean>
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action path="/dynaactionform"
type="cn.ineeke.dynamicactionform.action.DynaFormAction"
name="dynaForm"
scope="request"
>
<forward name="success" path="/dynaform.jsp"></forward>
</action>
</action-mappings>
<message-resources parameter="cn.ineeke.struts.ApplicationResources" />
</struts-config>

在struts-config.xml中我们配置了一个ActionForm和一个Action,这个ActionForm有两个属性,分别是 userName和password以及其数据类型。其中org.apache.struts.action.DynaActionForm这个类是 Struts所为我们提供的,我们就是使用它实现动态ActionForm的。
动态ActionForm动在何处呢?就动在form-bean的配置中。我们可以使用<form-property>动态的配置ActionForm的各个属性。

 

 

--------------------------------------------------------------------------------------------------
我们的淘客网开通啦,欢迎大家去逛逛 ~\( ≧▽≦ )/~ 啦啦啦 ~~~
淘宝购物资讯网: http://taoke178.jimdo.com

淘乐园: http://taoleyuan.jimdo.com

 

分享到:
评论

相关推荐

    struts1配置文件中DynaActionForm的使用

    用jsp、action、struts-config.xml配置文件,举例说明了DynaActionForm 在struts1 中的作用。

    Struts1基本配置

    &lt;controller processorClass="org.apache.struts.action.DynaActionForm"&gt; &lt;!-- Controller配置 --&gt; &lt;!-- 全局转发配置 --&gt; &lt;!-- 国际化资源配置 --&gt; &lt;/struts-config&gt; ``` - **web.xml**:作为...

    struts2.1配置

    在struts.xml中定义一个DynaActionForm,然后在Action中通过DynaActionForm获取属性。 9. **文件上传**:Struts2支持文件上传功能。在JSP中使用`enctype="multipart/form-data"`来指定文件上传的表单类型。在...

    Struts framework中DynaActionForm(动态表单)介绍及应用

    Struts framework中,ActionForm对象的封装及应用,通过Struts framework中的DynaActionForm类及其子类可以实现动态的ActionForm ,动态的ActionForm允许你通过Struts的配置文件完成ActionForm的全部配置;...

    struts配置数据源的问题

    例如,你可以使用`org.apache.struts.action.DynaActionForm`动态表单类来注入数据源。 ```xml ``` 4. **在Action类中获取数据源**:在Action类中,通过`ActionServlet`的`getServletContext().lookup()`方法...

    struts 配置文件 标记库

    若需要使用动态表单,则可以设置为`org.apache.struts.action.DynaActionForm`。 - **`&lt;form-property&gt;`**: - **`name`属性**:表示表单对象中属性的名称。 - **`type`属性**:表示表单对象中属性的数据类型。 ...

    struts配置文件.docx

    同时,对于DynaActionForm类型,由于其动态属性的特性,某些标签的属性配置会有所不同,如不能在JSP中直接指定`name`和`type`属性。总的来说,熟练掌握Struts配置文件和相关标签,能够帮助开发者更高效地构建功能...

    struts7验证框架 struts7验证框架

    为了解决这个问题,Struts引入了DynaActionForm,这是一种动态ActionForm,它允许开发者不再需要手动创建ActionForm类,而是通过配置文件(struts-config.xml)来定义表单字段及其属性。 DynaActionForm是基于org....

    Eclipse开发Struts1.2

    - `struts-config.xml`是Struts应用的主要配置文件,遵循`struts-config_1_2.dtd`。 - 文件结构包括:`&lt;data-sources&gt;`, `&lt;form-beans&gt;`, `&lt;global-exceptions&gt;`, `&lt;global-forwards&gt;`, `&lt;action-mappings&gt;`, `...

    Struts简介 什么是Struts Struts基本运作流程

    - **灵活的配置**:通过配置文件(如`struts-config.xml`)来定义应用的行为,方便调整和维护。 - **扩展性和插件支持**:支持自定义插件,可以轻松扩展框架的功能。 - **社区支持**:拥有活跃的开发者社区,提供了...

    struts-config.xml配置

    &lt;data-source key="exampleDS" type="org.apache.struts.action.DynaActionForm"&gt; &lt;!-- DataSource配置属性 --&gt; ``` **3. ActionForward配置** `ActionForward`定义了请求成功或失败后的页面跳转。它可以是...

    struts的总结(struts1.x)

    本文对 Struts 1.x 的核心概念和技术进行了详细介绍,包括配置文件解析、ActionForm 和 DynaActionForm 的使用、数据转换以及表单验证等方面。希望这些内容能帮助读者更好地理解和掌握 Struts 1.x 框架的使用方法。

    Struts1.3 备忘笔记

    05 Struts_05DynaActionForm : 相对应ActionForm来说,动态ActionForm只需要在配置文件中配置就可以了,但是它不能实现验证功能,演示人机交互实例。 06 Struts_06Filter : 中文编码的统一处理,通过Struct的请求...

    struts1_详解

    - **动态ActionForm**:`org.apache.struts.action.DynaActionForm`,支持动态属性的增删改查。 #### 五、Struts1 连接池与多模块操作 **5.1 数据库连接池** Struts1可以集成C3P0等连接池,但文档中提到的问题...

    struts1.0的上传代码

    1. **配置struts-config.xml**:这是Struts框架的核心配置文件,我们需要在这里定义Action Mapping来指定特定的Action类处理上传请求。例如,添加如下配置: ```xml ``` 其中,`/upload`是请求路径,`...

    [摘]Struts 学习笔记之ActionForm

    在Struts配置文件(struts-config.xml)中,我们需要声明ActionForm与Action的关联,指定哪个Action使用哪个Form Bean: ```xml ``` 当用户访问/login路径并提交表单时,Struts会自动实例化UserForm...

    struts动态表单实例

    1. 配置Struts-config.xml文件,定义DynaActionForm和相关的ActionMapping。 2. 创建DynaActionForm类,定义动态属性。 3. 编写Action类,处理动态表单的提交。 4. 设计JSP页面,利用`&lt;html:form&gt;`和`&lt;html:dynamic&gt;...

    struts1+spring+hibernate整合示例

    本篇文章将详细解读“struts1+spring+hibernate整合示例”的相关内容,包括配置文件的分析、各组件的作用及它们之间的交互机制等。 #### 一、整体架构概述 在整合Struts1、Spring与Hibernate的过程中,每个框架都...

    Struts原理(二)

    通过在struts-config.xml中配置DynaActionForm,并在ActionForm中实例化DynaActionForm,我们可以轻松地处理不同场景下的表单数据。 **使用实体对象作为Form属性** 在开发中,经常需要将数据库中的实体对象映射到...

    struts-1.3.10

    - **struts-bean.jar**:提供数据绑定和标签库支持,包括BeanUtils和DynaActionForm。 - **struts-html.jar**:包含HTML表单相关的标签库,如表单元素、链接、图像等。 - **struts-logic.jar**:提供逻辑控制标签,...

Global site tag (gtag.js) - Google Analytics