- 浏览: 188138 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (321)
- eclipse (4)
- idea (2)
- Html (8)
- Css (14)
- Javascript (8)
- Jquery (6)
- Ajax Json (4)
- Bootstrap (0)
- EasyUI (0)
- Layui (0)
- 数据结构 (0)
- Java (46)
- DesPattern (24)
- Algorithm (2)
- Jdbc (8)
- Jsp servlet (13)
- Struts2 (17)
- Hibernate (11)
- Spring (5)
- S2SH (1)
- SpringMVC (4)
- SpringBoot (11)
- WebService CXF (4)
- Poi (2)
- JFreeChart (0)
- Shiro (6)
- Lucene (5)
- ElasticSearch (0)
- JMS ActiveMQ (3)
- HttpClient (5)
- Activiti (0)
- SpringCloud (11)
- Dubbo (6)
- Docker (0)
- MySQL (27)
- Oracle (18)
- Redis (5)
- Mybatis (11)
- SSM (1)
- CentOS (10)
- Ant (2)
- Maven (4)
- Log4j (7)
- XML (5)
最新评论
1. struts2处理传入多个值
1) 处理数目不定的字符串
2) 处理数目不定的JavaBean对象
新建项目HeadFirstStruts2Chap02_02
1) 处理数目不定的字符串
HobbyAction.java package com.andrew.action; import com.opensymphony.xwork2.ActionSupport; public class HobbyAction extends ActionSupport { private String[] hobby; public String[] getHobby() { return hobby; } public void setHobby(String[] hobby) { this.hobby = hobby; } @Override public String execute() throws Exception { System.out.println("执行了HobbyAction的默认方法"); if (hobby != null) { for (String h : hobby) { System.out.println(h); } } return SUCCESS; } } struts.xml <action name="hobby" class="com.andrew.action.HobbyAction"> <result name="success">success.jsp</result> </action> hobby.jsp <form action="hobby" method="post"> 爱好: <input type="checkbox" name="hobby" value="唱歌"/>唱歌 <input type="checkbox" name="hobby" value="跳舞"/>跳舞 <input type="checkbox" name="hobby" value="睡觉"/>睡觉 <input type="checkbox" name="hobby" value="玩CF"/>玩CF <input type="submit" value="提交"/> </form> success.jsp OK! http://localhost:8080/HeadFirstStruts2Chap02_02/hobby.jsp 运行结果: Ok! 控制台: 执行了HobbyAction的默认方法 唱歌 跳舞 睡觉 玩CF
2) 处理数目不定的JavaBean对象
Student.java package com.andrew.model; public class Student { private String name; private String sex; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "Student [name=" + name + ", sex=" + sex + ", age=" + age + "]"; } } StudentAction.java package com.andrew.action; import java.util.List; import com.andrew.model.Student; import com.opensymphony.xwork2.ActionSupport; public class StudentAction extends ActionSupport { private List<Student> students; public List<Student> getStudents() { return students; } public void setStudents(List<Student> students) { this.students = students; } @Override public String execute() throws Exception { System.out.println("执行了StudentAction的默认方法"); for (Student s : students) { System.out.println(s); } return SUCCESS; } } struts.xml <action name="student" class="com.andrew.action.StudentAction"> <result name="success">success.jsp</result> </action> addstudents.jsp <form action="student" method="post"> <table> <tr><th>姓名</th><th>性别</th><th>年龄</th></tr> <tr> <td><input type="text" name="students[0].name"/></td> <td><input type="text" name="students[0].sex"/></td> <td><input type="text" name="students[0].age"/></td> </tr> <tr> <td><input type="text" name="students[1].name"/></td> <td><input type="text" name="students[1].sex"/></td> <td><input type="text" name="students[1].age"/></td> </tr> <tr><td colspan="3"><input type="submit" value="提交"/></td></tr> </table> </form> success.jsp Ok! http://localhost:8080/HeadFirstStruts2Chap02_02/hobby.jsp a 1 11 b 2 12 submit 运行结果: Ok! 控制台: 执行了StudentAction的默认方法 Student [name=a, sex=1, age=11] Student [name=b, sex=2, age=12]
发表评论
-
struts2防重复提交
2019-01-14 08:55 3531. struts2防重复提交 Student.java ... -
struts2文件上传和下载
2019-01-12 16:10 3091. struts2文件上传和下载 1) Struts2 ... -
struts2验证框架
2019-01-12 16:10 4141. struts2验证框架 Struts2基于Stru ... -
struts2国际化
2019-01-12 16:10 3951. struts2国际化 网上转码: http://too ... -
struts2标签
2019-01-12 16:10 4471. struts2标签 Struts2自己封装 ... -
struts2值栈与OGNL
2019-01-12 16:10 4531. struts2值栈简介 值栈是对应每个请求对象的一 ... -
struts2拦截器
2019-01-11 09:07 3481. struts2拦截器简介 拦截器简介 Strut ... -
struts2配置result
2019-01-11 09:07 4371. struts2配置result 新建项目HeadF ... -
struts2分模块与action生命周期
2019-01-11 09:07 3521. 分模块 struts.xml <inclu ... -
struts2使用通配符与动态方法调用
2019-01-11 09:06 3881. 使用通配符 新建项目HeadFirstStruts ... -
struts2配置struts.xml
2019-01-11 09:06 3871. struts2配置struts.xml 1 ... -
struts2属性驱动与模型驱动
2019-01-10 09:17 3831. struts2属性驱动与模型驱动 user.jav ... -
struts2引入ActionSupport
2019-01-10 09:16 4191. struts2引入ActionSupport He ... -
struts2自动获取设置数据
2019-01-10 09:16 3991. struts2自动获取设置数据 新建项目HeadF ... -
struts2简介
2019-01-10 09:16 4621. struts2简介 官网:http://struts. ... -
Java struts2 Jar包
2018-09-03 19:17 6691. Java struts2 Jar包下载地址 http: ...
相关推荐
综上所述,"应用Struts2处理表单数据"这个主题涵盖了Struts2框架中的诸多关键概念,包括Action设计、表单数据绑定、结果处理、拦截器、配置、表达式语言以及验证和异常处理机制。这些知识点对于理解和开发基于Struts...
在处理一个表单(form)中存在多个submit按钮的情况时,Struts2提供了一种优雅的方式来区分用户点击了哪个按钮,而无需像Struts1那样使用额外的动作类(如LookupDispatchAction或EventDispatchAction)。 在传统的...
7. **插件(Plug-ins)**:Struts2支持丰富的插件系统,如Struts2-convention-plugin、Struts2-dojo-plugin等,这些插件提供了更多的功能,如自动Action映射、AJAX支持等。 8. **依赖注入(Dependency Injection, ...
在`struts2小程序`中,可能会包含一个或多个Action类,负责处理用户请求并返回相应的结果。 2. **配置文件**:Struts2使用XML配置文件(struts.xml或struts.properties)来定义Action、结果类型、拦截器等。这些...
Struts2是一个强大的Java EE应用程序框架,主要用于构建企业级的Web应用。它的核心是MVC(Model-View-Controller)设计模式,可以帮助开发者组织代码,提高开发效率,并且提供了丰富的特性来支持表单验证、国际化、...
在本场景中,我们将探讨如何使用AJAX来传递JSON数组,并在Struts2的Action中接收和处理这些数据。 首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于人阅读和编写,同时也易于机器解析...
这个"留言板留言板struts2"项目,显然是一个基于Struts2实现的简单留言板系统,旨在展示Struts2的核心功能和开发流程。下面将详细介绍Struts2框架以及在该项目中可能涉及的关键知识点。 1. **Struts2框架概述**:...
通过上述对比可以看出,Struts2相比Struts1在很多方面进行了改进和优化,尤其是在灵活性、可测试性以及对现代Web开发的支持上有着显著的优势。尽管如此,在某些特定的应用场景下,Struts1可能仍然有其适用之处。选择...
Struts2是一个强大的Java web应用程序框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建可维护性、可扩展性良好的企业级应用的工具。这个"struts2jar.zip"压缩包包含了Struts2学习和研究的基础...
Struts2是一个强大的Java web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。这个API帮助文档是开发者在使用Struts2框架时的重要参考资料,它详细阐述了框架的各种组件、类库和方法,有助于理解并有效...
- Struts2默认提供了许多内置拦截器,例如`defaultStack`拦截器栈包含了多个常用拦截器。 - **自定义拦截器的实现**: - 实现`Interceptor`接口创建自定义拦截器,需要实现`intercept()`方法。 - 通过继承`...
根据提供的文件信息,我们可以从《Struts 2实战 Struts2 in Action》这一书籍中提炼出与Struts 2框架相关的多个重要知识点。Struts 2是一个基于Java的开源Web应用框架,它继承了Struts 1的优点并进行了大量的改进和...
Struts2-showcase是一个用于演示和学习Apache Struts2框架功能的开源项目。这个压缩包“struts2-showcase.rar”包含了完整的源代码,旨在帮助开发者深入理解Struts2框架的工作原理及其各种特性。以下是对Struts2和...
1. **封装OGNL操作,实现值的传递**:Struts2通过对OGNL表达式的封装,实现从客户端传入的参数到Java对象之间的值传递。这一过程包括但不限于对各种复杂类型的处理,如数组、列表、映射等。 2. **类型转换**:为了...
在Java Web开发中,jar(Java Archive)文件是一种归档格式,用于打包多个类文件和相关的元数据。Struts2框架的jar包通常包括核心库、插件、依赖库等,它们共同协作以提供完整的功能。这些jar文件是Struts2框架运行...
- **优势**:使用 Struts2 可以显著提高开发效率,因为它能够处理很多基础任务,如数据接收、类型转换、验证等。 **1.2 Struts2 架构** - **MVC 架构**:Struts2 采用经典的 MVC 架构,分为模型(Model)、视图(View)...
Struts2是一个基于MVC(Model-View-Controller)设计模式的开源Java Web框架,它在Web应用开发中被广泛使用。Struts2的核心在于提供一个强大的、灵活的、可扩展的架构,使得开发者能够更方便地实现业务逻辑与表现层...
通过这个简单的Struts错误处理小例子,我们可以了解到Struts是如何将错误信息从控制器层传递到视图层,并提供了多种方法来优雅地处理异常。这有助于提高应用程序的健壮性,同时确保用户在遇到问题时能得到清晰的反馈...
在处理多个业务时,ActionContext提供了访问当前请求上下文的桥梁,可以用来获取请求参数,或者设置值到Request、Session、Application域中。这对于共享数据或在多个Action之间传递信息非常有用。 **五、异常处理**...
Struts2是一个强大的Java web应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的应用程序。由Apache软件基金会维护,它是Struts1的升级版,提供了更先进的特性和更好的性能。尚硅谷_佟刚_Struts2的讲解课件...