Java Struts2 框架入门详解(三)简单的实例

本文详细介绍了如何使用Struts2框架创建一个简单的登录应用程序,包括设置Struts应用程序、创建JSP页面、定义Bean、编写Action类以及实现数据验证。通过实例演示了如何处理用户输入并展示验证结果,为初学者提供了一个清晰的入门指南。
摘要由CSDN通过智能技术生成

使用 Struts 时,此框架将为您提供一个控制器 Servlet (ActionServlet),它在 IDE 中包含的 Struts 库中定义,并自动在 web.xml 部署描述符中注册,如下所示。该控制器 Servlet 使用 struts-config.xml 文件将传入请求映射到 Struts Action 对象,并实例化与暂时存储窗体数据的操作相关联的任何 ActionForm 对象。Action 对象在使用窗体 Bean 中存储的任何数据的同时,使用其 execute 方法处理请求。一旦 Action 对象处理了请求,它就将存储任何新数据(即,存储在窗体 Bean 或单独的结果 Bean 中),并将结果转发到相应的视图中。

Struts 工作流

在 NetBeans IDE 中开发 Struts 应用程序与开发任何其他类型的 Web 应用程序类似。但是,您要使用 IDE 提供的 Struts 支持来补充 Web 开发工具包。例如,在 IDE 中使用模板创建 Struts Action 对象和 ActionForm Bean。创建后,IDE 会自动在 struts-config.xml 文件中注册这些类,并让您使用源代码编辑器右键单击菜单中的菜单项非常轻松地扩展此文件。由于许多 Web 应用程序将 JSP 页用于视图,因此 Struts 还提供了定制标记库,以便于与 HTML 窗体进行交互。在 IDE 的源代码编辑器中,您可以调用代码完成功能和 Javadoc 支持,以帮助有效地使用这些库。

以下步骤说明了如何创建收集用户数据的简单窗体、执行简单验证以及在成功页上输出数据。

设置 Struts 应用程序

在 IDE 中,Struts 只是一个附带 Struts 库和配置文件的普通 Web 应用程序。在 IDE 中,您可以像创建其他任何 Web 应用程序那样,使用新建 Web 应用程序向导创建 Struts 应用程序,此外,还需要一个表明希望将 Struts 库和配置文件包含在应用程序中的步骤。

  1. 从主菜单中,选择 "File"(文件)> "New Project"(新建项目)(Ctrl-Shift-N 组合键;在 Mac 上为 ⌘-Shift-N 组合键)。在 "Categories"(类别)列表中选择 "Java Web",然后在 "Projects"(项目)列表中选择 "Web Application"(Web 应用程序)。单击 "Next"(下一步)。
  2. 在 "Name and Location"(名称和位置)面板中,输入 MyStrutsApp 作为项目名称,然后单击 "Next"(下一步)。
  3. 在 "Server and Settings"(服务器和设置)面板中,选择您要将应用程序部署到的服务器。这里仅列出了已在 IDE 中注册的服务器。(要注册服务器,请单击 "Server"(服务器)下拉列表旁边的 "Add"(添加)。)另请注意,所部署应用程序的上下文路径是 /MyStrutsApp。单击 "Next"(下一步)。
  4. 在 "Frameworks"(框架)面板中选择 "Struts"。
    显示在新建 Web 应用程序向导的 "Frameworks"(框架)面板中的 Struts 选项

    出于本教程的目的,请勿更改此面板下部区域中的任何配置值。向导会显示以下配置选项。

    • Action Servlet Name(操作 Servlet 名称):应用程序中使用的 Struts 操作 Servlet 的名称。web.xml 部署描述符包含操作 Servlet 条目,并指定相应的特定于 Struts 的参数(如 Struts 库中 Servlet 类的路径,以及应用程序中 struts-config.xml 配置文件的路径)。
    • Action URL Pattern(操作 URL 模式):指定映射到 Struts 操作控制器的传入请求模式。这会在部署描述符中生成一个映射条目。默认情况下,只映射 *.do 模式。
    • Application Resource(应用程序资源):用于指定将在 struts-config.xml 文件中用来本地化消息的资源包。默认情况下,它是 com.myapp.struts.ApplicationResource
    • Add Struts TLDs(添加 Struts TLD):用于生成 Struts 标记库的标记库描述符。标记库描述符是一个 XML 文档,其中包括有关整个标记库以及每个单独标记的附加信息。通常,此操作是不必要的,因为您可以参阅联机 URI,而不是本地 TLD 文件。
  5. 单击 "Finish"(完成)。IDE 将在您的文件系统中创建项目文件夹。与 IDE 中的任何 Web 应用程序一样,此项目文件夹中包含所有的源代码和 IDE 的项目元数据(如 Ant 构建脚本)。但是除此之外,您的 Web 应用程序在其类路径上还具有所有的 Struts 库。这些 Struts 库不仅位于应用程序的类路径上,而且还包含在项目中,并且在稍后构建项目时将与项目打包在一起。

此项目在 IDE 中打开。"Projects"(项目)窗口是项目源的主入口点。它显示重要项目内容的逻辑视图。例如,如果展开新项目中的若干节点,则项目可能显示如下:

包含新创建的项目的 "Projects"(项目)窗口

注:使用 "Files"(文件)窗口("Window"(窗口)> Files"(文件))可以通过基于目录的视图来查看所有项目内容。

特定于 Struts 的配置文件以及应用程序的部署描述符就放置在 "Configuration Files"(配置文件)文件夹中。打开部署描述符(双击 web.xml 文件节点使其显示在源代码编辑器中)。为了进行 Struts 处理,为 Struts 控制器 Servlet 提供了一个映射。

<servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
        <param-name>config</param-name>
        <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <init-param>
        <param-name>debug</param-name>
        <param-value>2</param-value>
    </init-param>
    <init-param>
       <param-name>detail</param-name>
       <param-value>2</param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
</servlet-mapping>

在以上代码中,Struts 控制器 Servlet 名为 action,并在 Struts 库 (org.apache.struts.action.ActionServlet) 中定义。将其设置为处理所有满足 *.do映射的请求。此外,Servlet 的初始化参数通过 struts-config.xml 文件指定,同时包含在 WEB-INF 文件夹中。

创建 JSP 页

首先为应用程序创建两个 JSP 页。第一个页面中显示一个窗体。第二个页面是登录成功时返回的视图。

创建登录页

  1. 右键单击 MyStrutsApp 项目节点,选择 "New"(新建)> "JSP",然后将新文件命名为 login。单击 "Finish"(完成)。此时将在源代码编辑器中打开 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值