📝 Apache Struts2教程

70篇技术文档
  Struts 2教程

📅  最后修改于: 2020-11-11 04:52:00        🧑  作者: Mango

Apache Struts 2是一个优雅的,可扩展的框架,用于创建企业就绪的Java Web应用程序。该框架旨在简化随着时间的推移从构建,部署和维护应用程序的整个开发周期。 Apache Struts 2最初称为Web Work2。本教程将教您如何使用Apache Struts通过简单的步骤创建企业就绪的Java Web应用程序。本教程适用于有兴趣学习Struts 2.x框架及其应用程序基础知识的...

  基本的MVC架构

📅  最后修改于: 2020-11-11 04:52:23        🧑  作者: Mango

中号奥德尔VIEWçontroller或MVC,因为它是俗称,是一个用于开发Web应用程序的设计模式。 Model View Controller模式由以下三个部分组成-模型–模式的最低级别,负责维护数据。视图-这负责向用户显示全部或部分数据。控制器-控制模型与视图之间交互的软件代码。MVC之所以流行,是因为它将应用程序逻辑与用户界面层隔离开来,并支持关注点分离。此处,控制器接收对应用程序的所有请...

  Struts 2-概述

📅  最后修改于: 2020-11-11 04:52:55        🧑  作者: Mango

Struts2是基于MVC设计模式的流行且成熟的Web应用程序框架。 Struts2不仅是Struts 1的新版本,而且是对Struts体系结构的完全重写。Webwork框架最初以Struts框架为基础,其目标是提供基于Struts的增强和改进框架,以使开发人员更轻松地进行Web开发。不久之后,Webwork框架和Struts社区携手创建了著名的Struts2框架。Struts 2框架功能这是一些...

  Struts 2-环境设置

📅  最后修改于: 2020-11-11 04:53:30        🧑  作者: Mango

我们的第一个任务是使最小的Struts 2应用程序运行。本章将指导您如何准备开发环境以开始使用Struts 2。我假设您已经在计算机上安装了JDK(5 +),Tomcat和Eclipse。如果您没有安装这些组件,请按照以下快速步骤进行操作-第1步-设置Java开发工具包(JDK)您可以从Oracle Java网站−Java SE Downloads下载最新版本的SDK。您将在下载的文件中找到安装J...

  Struts 2-建筑

📅  最后修改于: 2020-11-11 04:53:47        🧑  作者: Mango

从高层次来看,Struts2是一个pull-MVC(或MVC2)框架。 Struts2中的Model-ViewController模式通过以下五个核心组件实现-动作拦截器价值栈/ OGNL结果/结果类型查看技术Struts 2与传统的MVC框架略有不同,在传统的MVC框架中,动作扮演的是模型而非控制器的角色,尽管存在一些重叠。上面的图描绘了以ontroller Struts2的高层体系结构的M个O...

  Struts 2-Hello World示例

📅  最后修改于: 2020-11-11 04:54:40        🧑  作者: Mango

正如您已经从Struts 2架构中学到的那样,当您单击超链接或在Struts 2 Web应用程序中提交HTML表单时,输入将由Controller收集,并发送到名为Actions的Java类。执行动作后,结果将选择一个资源来呈现响应。该资源通常是JSP,但也可以是PDF文件,Excel电子表格或Java applet窗口。假设您已经建立了开发环境。现在,让我们继续构建第一个Hello World ...

  Struts 2-配置文件

📅  最后修改于: 2020-11-11 04:55:27        🧑  作者: Mango

本章将带您完成Struts 2应用程序所需的基本配置。在这里,我们将看到可以通过一些重要的配置文件(例如web.xml,struts.xml,strutsconfig.xml和struts.properties)进行配置的内容。坦白地说,您可以仅使用web.xml和struts.xml配置文件来开始工作(就像您在上一章中看到的,我们的示例使用这两个文件一样)。但是,据您所知,我们还将说明其他文件。...

  Struts 2-动作

📅  最后修改于: 2020-11-11 04:56:09        🧑  作者: Mango

对于任何MVC(模型视图控制器)框架而言,动作都是Struts2框架的核心。每个URL都映射到一个特定的操作,该操作提供了处理来自用户的请求所必需的处理逻辑。但是该行动还具有其他两个重要作用。首先,该操作在从请求到视图的数据传输中起着重要作用,无论是JSP还是其他类型的结果。其次,该操作必须帮助框架确定哪个结果应呈现将在对请求的响应中返回的视图。建立动作Struts2中对动作的唯一要求是必须有一个...

  Struts 2-拦截器

📅  最后修改于: 2020-11-11 04:57:25        🧑  作者: Mango

拦截器在概念上与servlet过滤器或JDK代理类相同。拦截器允许横切功能与操作以及框架分开实现。您可以使用拦截器实现以下目标-在调用动作之前提供预处理逻辑。调用动作后提供后处理逻辑。捕获异常,以便可以执行替代处理。Struts2框架中提供的许多功能都是使用拦截器实现的。示例包括异常处理,文件上载,生命周期回调等。实际上,由于Struts2在拦截器上强调了其许多功能,因此每个动作不太可能分配7或8...

  Struts 2-结果和结果类型

📅  最后修改于: 2020-11-11 04:57:55        🧑  作者: Mango

如前所述,<results>标记在Struts2 MVC框架中扮演视图的角色。该动作负责执行业务逻辑。执行业务逻辑后的下一步是使用<results>标签显示视图。通常,结果中会附带一些导航规则。例如,如果操作方法是对用户进行身份验证,则有三种可能的结果。成功登录登录失败-用户名或密码错误帐户被锁定在这种情况下,将为action方法配置三个可能的结果字符串和三个不同的视图以呈现结果。在前面的示例中,...

  Struts 2-值堆栈/ OGNL

📅  最后修改于: 2020-11-11 04:58:39        🧑  作者: Mango

价值栈值堆栈是几个对象的集合,这些对象按提供的顺序保持以下对象:Sr.NoObjects & Description1Temporary ObjectsThere are various temporary objects which are created during execution of a page. For example the current iteration value fo...

  Struts 2-文件上传

📅  最后修改于: 2020-11-11 04:59:24        🧑  作者: Mango

Struts 2框架提供内置支持,可使用“ HTML中基于表单的文件上载”来处理文件上载。上传文件后,通常会将其存储在一个临时目录中,并且Action类应将其处理或移动到永久目录中,以确保数据不会丢失。注–服务器可能具有适当的安全策略,该策略禁止您写入除临时目录和属于Web应用程序的目录以外的目录。通过预定义的拦截器FileUpload拦截器可以在Struts中上传文件,该拦截器可通过org.ap...

  Struts 2-数据库访问

📅  最后修改于: 2020-11-11 04:59:56        🧑  作者: Mango

本章将教您如何通过简单的步骤使用Struts 2访问数据库。 Struts是MVC框架,而不是数据库框架,但它为JPA / Hibernate集成提供了出色的支持。我们将在后面的章节中研究休眠集成,但是在本章中,我们将使用普通的旧式JDBC来访问数据库。本章的第一步是设置和初始化数据库。在此示例中,我使用MySQL作为数据库。我的机器上安装了MySQL,并创建了一个名为“ struts_tutor...

  Struts 2-发送电子邮件

📅  最后修改于: 2020-11-11 05:00:30        🧑  作者: Mango

本章说明如何使用Struts 2应用程序发送电子邮件。对于此练习,您需要从JavaMail API 1.4.4下载并安装mail.jar,并将mail.jar文件放置在WEB-INF \ lib文件夹中,然后继续执行创建操作,查看和配置的标准步骤。文件。建立动作下一步是创建一个Action方法,该方法负责发送电子邮件。让我们用以下内容创建一个名为Emailer.java的新类。如上面的源代码所示,...

  Struts 2-验证框架

📅  最后修改于: 2020-11-11 05:01:18        🧑  作者: Mango

在本章中,我们将更深入地研究Struts验证框架。在Struts核心,我们具有验证框架,该框架可帮助应用程序在执行action方法之前运行规则以执行验证。客户端验证通常是使用Javascript实现的。但是,不应仅依赖客户端验证。最佳实践建议应在应用程序框架的所有级别上引入验证。现在,让我们看一下向Struts项目添加验证的两种方法。在这里,我们以一个雇员的示例为例,该雇员的姓名和年龄应该使用一个...