页面中传的是Buser对象,BuserBean的属性为:
private String URealname;
private String USex;
private String UTel;
private String UQq;
添加get、set方法。
1.register.jsp
<!--
s:submit中的method属性和struts.xml中action标签中的method属性一致(method属性指定了要调用的方法)。
在s:submit中可以为一个action设置多个method,而在struts.xml中action标签中只能设置一个method。
当然,在struts.xml中可以为一个action指定多个actionName(action别名)。
总结:一个Action类,可以对应多个action别名,每个action别名对应多个method属性(通过s:submit标签设置)。
-->
<s:form action="userAction">
<table>
<tr>
<td>用户注册信息</td>
</tr>
<tr>
<td>真实姓名</td>
<td><input name="buser.URealname" type="text" /></td>
</tr>
<tr>
<td>性别</td>
<td><input type="radio" name="buser.USex" value="男"checked="checked"/>男
<input type="radio" name="buser.USex" value="女" class="radio" />
女</td>
</tr>
<tr>
<td>手机号码</td>
<td><input name="buser.UTel" type="text"/></td>
</tr>
<tr>
<td>QQ号</td>
<td><input name="buser.UQq" type="text"/></td>
</tr>
</table>
<s:submit value="提交" method="ensure" />
<s:submit value="预览" method="view" />
</s:form>
2.struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration
2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- 加载struts2框架默认的配置文件 -->
<include file="struts-default.xml" />
<!-- extends表示要加载struts2框架默认的package -->
<package name="struts2" extends="struts-default">
<!-- action与action之间的跳转 -->
<action name="userAction" class="com.dgy.action.UserAction">
<result name="ensure" >test.jsp</result>
<result name="view" >view.jsp</result>
<result name="input">register.jsp</result>
</action>
</package>
</struts>
3.com.dgy.action.UserAction
package com.dgy.action;
import com.dgy.javabean.BuserBean;
import com.opensymphony.xwork2.ActionSupport;
public class UserAction extends ActionSupport{
BuserBean buser ;
public String ensure(){
System.out.println("running ensure()!");
return "ensure";
}
public String view(){
System.out.println("running view()!");
this.setBuser(this.getBuser());
return "view";
}
public BuserBean getBuser() {
return buser;
}
public void setBuser(BuserBean buser) {
this.buser = buser;
}
}
4.view.jsp
<s:iterator value="buser">
<table>
<tr>
<td>用户注册信息</td>
</tr>
<tr>
<td>真实姓名</td>
<td ><s:property value="URealname"></s:property></td>
</tr>
<tr>
<td>性别</td>
<td ><s:property value="USex"></s:property></td>
</tr>
<tr>
<td>手机号码</td>
<td ><s:property value="UTel"></s:property></td>
</tr>
<tr>
<td>QQ号</td>
<td><s:property value="UQq"></s:property></td>
</tr>
</table>
</s:iterator>
<s:submit value="提交" method="ensure" />
</s:form>
分享到:
相关推荐
在处理一个表单(form)中存在多个submit按钮的情况时,Struts2提供了一种优雅的方式来区分用户点击了哪个按钮,而无需像Struts1那样使用额外的动作类(如LookupDispatchAction或EventDispatchAction)。 在传统的...
Java 通过不同的方式可以实现对多个 submit 按钮的处理,下面将详细介绍 Struts1 和 Struts2 中的处理方法。 在 Struts1 中,使用 LookupDispatchAction 动作可以处理含有多个 submit 的 form。但是,这种方式需要...
总结起来,Struts Form表单通过Form Bean将JSP页面的表单数据与后台处理逻辑关联起来,简化了Web应用的数据管理。同时,它允许与HTML原生的表单元素混合使用,提供了更大的灵活性。理解并熟练运用Struts Form,对于...
Struts2是一个强大的Java ...通过分析和运行这个示例,开发者可以深入理解Struts2 Form标签的工作原理,以及如何在实际项目中应用它来处理表单数据。学习和熟练掌握这一核心组件,对于提升Java web开发技能至关重要。
3. **嵌套Form Bean**: 在复杂的表单中,可能会有嵌套的表单结构,即一个表单内包含其他表单。这种情况下,可以使用嵌套Form Bean。每个嵌套的Form Bean都有自己的属性,可以通过点号`.`来访问。例如,一个用户表单...
在"整合了struts2 jquery的formValidator表单验证的页面代码"这个项目中,开发者可能采用了以下步骤: 1. **引入依赖**:首先,需要在HTML页面中引入Struts2的相关JSP标签库,同时引入jQuery库和formValidator的...
在Struts2中,表单标签是用于构建用户界面的重要组件,它们帮助开发者创建交互式和动态的网页。这篇博客将深入探讨Struts2中的表单标签及其使用方法。 首先,我们需要理解Struts2表单标签的基本结构。通常,一个...
### EXT异步提交FORM表单...通过以上内容,我们不仅了解了EXT异步提交FORM表单的具体实现细节,还深入探讨了其与Struts2/Spring2.5框架的集成方法。这将有助于开发者更好地利用这些技术栈构建高效稳定的Web应用程序。
在Web开发中,表单重复提交是一个常见的问题,可能导致数据不一致或处理逻辑的混乱。Struts2提供了多种方法来防止这种情况,其中一种是通过重定向来实现。下面将详细解释Struts2如何通过重定向来防止表单重复提交。 ...
Struts2提供了Token插件来解决这个问题,确保每个表单提交只能被执行一次。下面将详细阐述Struts2中Token机制的工作原理、配置以及使用方法。 1. Token机制概述: Token机制是通过在客户端(浏览器)和服务器之间...
在这个名为"Struts2表单数据获取项目"的资源中,我们将深入探讨如何使用Struts2框架来处理表单提交的数据。 首先,我们来看看核心组件`Struts.xml`。这是Struts2应用的主要配置文件,用于定义动作(Actions)、结果...
开发者会在JSP中使用Struts2的标签库,如`s:form`、`s:textfield`、`s:submit`等,这些标签简化了与Action交互的过程,同时也方便了表单的渲染。 在MyEclipse环境下,你可以通过导入这个项目,配置好相应的服务器...
在Struts2中,文件上传功能是一个常用特性,尤其在处理用户提交的多个文件时。本文将详细讲解如何使用Struts2进行多个文件的上传,重点是使用List集合进行上传。 首先,要实现Struts2的文件上传,必须引入必要的...
"防止表单重复提交 token"是Struts2提供的一种解决方案,通过在请求中加入一个唯一的token来确保请求的唯一性和一致性。 首先,我们来看如何实现这个机制。在Struts2中,我们可以使用拦截器(Interceptor)来实现...
Struts2框架是Apache软件基金会下的一个开源项目,它提供了一种基于MVC(Model-View-Controller)设计模式的Web应用开发框架。Struts2提供了丰富的标签库,其中“S标签”(S-tags)是一种特殊的标签集合,用于简化...
总结起来,这个Struts2实例项目通过整合国际化、类型转换和Struts2标签,构建了一个完整的用户管理系统,展示了如何在实际开发中高效地处理Web请求,实现业务逻辑,并提供多语言支持。这样的练习有助于提升开发者对...
Struts2作为一款流行的Java Web框架,其在处理表单数据和验证方面有着强大的功能。在实际开发中,为了提供良好的用户体验,表单验证失败时通常需要将错误信息回显给用户。李顺利老师通过他的讲解,让我们深入理解了...
Struts 2 标签库(文档手册) Tags-API-CLSW-JSP <%@ taglib prefix="s" uri="/struts-tags" %> 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. <s:a href=""></s:a>-...
为了解决这个问题,jQuery Form插件应运而生,它允许我们实现异步(Ajax)表单提交,提高页面的响应性和用户体验。 ### jQuery Form 插件介绍 jQuery Form插件是基于jQuery的一个强大工具,它可以轻松地将任何HTML...