Struts 2 教程 - Struts2 教程
欢迎来到 Struts 2 教程索引帖。Struts 2 是最常用的Java Web 应用程序框架之一,最近我写了很多关于它的文章。Struts 2 建立在 Struts1 和 WebWork 框架之上,这使得它具有高度的灵活性、可扩展性和易于维护性。
Struts 2 教程
如果您想学习 Struts 2 及其重要功能,请按顺序阅读以下所有文章。所有这些文章都详细介绍了框架功能,并附带可下载的 Web 应用程序项目。
Struts 2 初学者教程
- ** Struts 2 初学者示例**这是本系列的第一篇文章,在这里您将了解 Struts 2 的基础知识,包括其架构、框架核心概念(如拦截器、OGNL、Action、结果、连接应用程序组件等)的简要介绍。本文还提供了基于 XML 配置的 Struts 2 Web 应用程序项目的基本示例。
- Struts 2 注释示例项目Java 注释在大多数 Java EE 框架中越来越流行,Struts 2 提供了很多注释,我们可以使用这些注释创建零配置的 Struts 2 Web 应用程序,即无需 struts 配置文件。查看文章以了解 Struts 2 框架中常用的注释。本文还提供了一个使用注释构建的示例项目,无需任何 struts 配置文件,您可以下载并试用。
- ** Struts 2 结果路径配置**我们可以配置 Struts 2 应用程序在特定位置查找结果页面,本文提供有关使用基于 XML 的配置以及基于注释的配置的简要细节。
- ** Struts 2 没有为动作和结果输入定义结果**使用 Struts 2 应用程序时遇到的常见错误,因为验证失败,并且在 struts 配置文件中没有为“输入”配置结果。
Struts 2 动作
- Struts 2 动作类动作类位于应用程序的前端,我们投入大量时间来设计和开发动作类。本文介绍了在 Struts 2 框架中创建动作类的四种不同方法。了解这些方法,并了解哪种方法最适合您的应用程序动作类。
- Struts 2 Action 对象支持和模型驱动示例大多数情况下,我们不希望表单 bean 属性成为操作类的一部分,而是希望将它们放在可以在操作类中使用的 Java bean 中。有两种方法可以实现这一点 - 对象支持和模型驱动。本文介绍了这两种方法以及哪种方法最好用。
- Struts2 操作消息和操作错误示例我们可以覆盖 ActionSupport 的validate() 方法,在服务器端进行表单字段验证,并返回带有操作错误消息的输入页面,以显示在结果页面中。同样,我们可以添加操作消息以显示在结果页面中。
Struts 2 拦截器
- Struts 2 拦截器教程及自定义拦截器示例Struts2 拦截器是框架的骨干,在 struts-default 包中定义。Struts2 拦截器是责任链模式实现的绝佳示例。本文介绍了拦截器的工作原理,以及我们如何轻松创建自己的拦截器并对其进行配置以执行操作。本文展示了如何使用自定义拦截器实现整个应用程序的身份验证,并使我们的代码松散耦合,并通过代码重用实现灵活性。
- Struts2 token 拦截器我们可以使用 Struts2 token 和 tokenSession 拦截器来处理 Web 应用程序中服务器端的多个表单提交问题。本文通过一个实际示例详细解释了这些拦截器。
- Struts2 execAndWait 拦截器我们可以使用 Struts2 execAndWait 拦截器在长时间运行的操作类的情况下向客户端返回中间响应页面。一旦操作类执行完成,最终响应将返回给客户端。本文介绍了 execAndWait 拦截器以及如何将其用于长时间运行的操作类。
Struts 2 标签
- ** Struts 2 OGNL 教程**Struts2 使用 OGNL 表达式语言将数据从请求传输到操作类 bean 属性,并在结果页面中将字符串转换为对象,反之亦然。本文详细介绍了 OGNL 表达式的使用方法以及如何创建自己的类型转换器类。
- Struts2 数据标签Struts2 带有丰富的标签,可分为数据、控制和 UI 标签。本文通过示例项目详细介绍了主要使用的 Struts2 数据标签。
- Struts2 控制标签Struts2 控制标签用于操作和导航集合中的数据。本文详细介绍了 Struts2 控制标签以及如何将它们用于条件流和遍历数组或集合。我们还通过示例项目了解了一些用于对列表进行排序、合并列表、附加列表和获取列表子集的其他控制标签。
- Struts2 UI 标签Struts2 UI 标签用于生成结果页面中的 HTML 表单元素。UI 标签还负责将表单属性绑定到操作类属性。本文通过示例项目详细介绍了最常用的 UI 标签。
Struts 2 本地化
Struts2 资源包和本地化Struts2 通过 I18nInterceptor 和资源包为国际化提供了强大的支持。本文通过示例项目,从资源包的不同位置讲解了 Struts2 框架对 i18n 的支持。
Struts 2 教程 - 杂项
- Struts2 单个和多个文件上传示例文件上传是 Web 应用程序中的常见任务之一。这就是为什么 Struts2 提供 FileUploadInterceptor 拦截器的原因,我们可以使用它在服务器上上传单个和多个文件,而无需使用任何第三方工具。本文通过示例项目详细介绍了此拦截器,以便在服务器上上传文件。
- 如何在 Struts 2 Action 中获取 Servlet Session、Request、Response、Context 属性有时我们希望在操作类中访问Servlet API组件,例如 Session、Request 和 Response。Struts2 提供了一组 *Aware 接口,我们可以在操作类中实现这些接口,以在操作类中注入 Servlet API 组件。
- Struts2 和 log4j 集成本文介绍如何在我们的 Web 应用程序中将 log4j 与 Struts2 框架集成以进行日志记录。
- Struts2 异常处理Struts2 提供了方便的方法来配置应用程序在全局包级别和操作级别抛出的错误页面。这也是由 Struts2 异常拦截器完成的,它是 defaultStack 的一部分。查看此帖子以了解示例项目及其使用详情。
- Struts2 Hibernate 集成示例我们通常在企业应用程序中使用 ORM 工具,而 Hibernate 是市场上最好的选择之一。本教程详细介绍了如何在 Web 应用程序中将 Hibernate 与 Struts2 框架集成,并提供了可下载的示例项目。
Struts 2 面试问题
本文列出了最重要的 Struts 2 面试问题,并附有详细答案,帮助您顺利通过面试。Struts 2 教程系列中还会有更多文章,请收藏此文章以供将来参考。