对于初学者而言,掌握 Struts 2 框架不仅可以提升开发 Web 应用的能力,还能深入了解 MVC(Model-View-Controller)架构模式。Struts 2 是一个基于 Servlet 的 Java 框架,它提供了丰富的功能,如表单验证、文件上传、国际化支持等,使开发者能够快速构建出功能齐全且易于维护的 Web 应用程序。本文将通过一个简单的示例应用来演示如何使用 Struts 2 创建一个基本的 Web 项目,从环境搭建到运行第一个应用,帮助读者快速上手。
首先,确保你的开发环境中已经安装了 Java SDK 并配置好环境变量。接着,安装 Apache Maven 和 Eclipse IDE,因为我们将使用 Maven 来管理项目的依赖,并使用 Eclipse 进行开发。
打开 Eclipse,创建一个新的 Maven 项目。在创建过程中,选择 Archetype 选项卡,然后输入或选择 Struts 2 的 Archetype ID,例如 struts2-maven-plugin
。完成项目创建后,Maven 会自动下载所需的依赖,并生成基本的项目结构。
接下来,配置 Struts 2。在 src/main/webapp/WEB-INF
目录下创建 struts.xml
文件,这是 Struts 2 的核心配置文件。下面是一个简单的配置示例:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="helloWorld" class="com.example.HelloWorldAction">
<result name="success">/WEB-INF/jsp/hello.jsp</result>
</action>
</package>
</struts>
在上述配置中,定义了一个名为 helloWorld
的 Action,它映射到了 HelloWorldAction
类,并指定了成功后的跳转页面为 /WEB-INF/jsp/hello.jsp
。
接下来,创建 HelloWorldAction
类。该类继承自 ActionSupport
,这是 Struts 2 提供的一个基类,包含了常用的方法和属性。
package com.example;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorldAction extends ActionSupport {
private static final long serialVersionUID = 1L;
public String execute() {
System.out.println("Hello World!");
return SUCCESS;
}
}
在 execute
方法中打印一条消息,并返回 SUCCESS
常量,指示 Struts 2 查找与之对应的结果配置。
紧接着,创建视图文件 hello.jsp
。该文件位于 src/main/webapp/WEB-INF/jsp
目录下。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Hello World Example with Struts 2</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
最后一步,配置 web.xml 文件,以便容器能够识别 Struts 2 的过滤器。
<web-app>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
至此,所有的配置都已经完成。启动 Tomcat 服务器,并访问 http://localhost:8080/YourProjectName/helloWorld
,你应该能看到页面上显示 “Hello World!” 的信息。
通过以上步骤,你已经成功创建了一个基本的 Struts 2 应用。这个简单的示例不仅介绍了如何搭建开发环境,还包括了如何配置 Struts 2、编写 Action 类以及创建视图文件。掌握了这些基础知识后,你可以继续探索 Struts 2 的更多高级功能,如拦截器、国际化、文件上传等,逐步提高自己的开发技能。