struts2怎么用:Struts2框架入门与使用指南
环境搭建
在使用Struts2之前,需要先搭建开发环境,以下是基本步骤:
-
下载Struts2框架
从Apache官网下载最新版本的Struts2压缩包,解压后得到struts2-x.x.x目录。 -
配置Tomcat服务器
将Struts2的struts2-core-x.x.x.jar和struts2-x.x.x-minimal.jar等核心库文件添加到Tomcat的lib目录中,或者在项目中通过Maven/Gradle引入依赖。 -
创建Web项目
使用IDE(如Eclipse、IntelliJ IDEA)创建一个动态Web项目,并配置Struts2的过滤器。
核心配置文件
Struts2的核心配置文件是struts.xml,用于定义全局设置和请求映射。
配置过滤器
在web.xml中添加Struts2的核心过滤器:
<filter>
<filter-name>struts2</filter-name>
<filter-class>com.opensymphony.xwork2.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
定义全局设置
在struts.xml中配置全局常量:
<constant name="struts.i18n.encoding" value="UTF-8"/> <constant name="struts.devMode" value="true"/>
定义Action映射
在struts.xml中定义Action及其对应的请求路径和结果:
<package name="default" namespace="/" extends="struts-default">
<action name="helloWorld" class="com.example.HelloWorldAction">
<result name="success">/success.jsp</result>
</action>
</package>
创建Action类
Struts2中的Action是控制器的核心,通常继承自ActionSupport类。
定义Action方法
package com.example;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorldAction extends ActionSupport {
private String message;
public String execute() {
setMessage("Hello, Struts2!");
return SUCCESS;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
使用注解配置
也可以使用注解简化配置:
@Action(value = "helloWorld", results = {
@Result(name = "success", location = "/success.jsp")
})
public class HelloWorldAction extends ActionSupport {
private String message;
public String execute() {
setMessage("Hello, Struts2!");
return SUCCESS;
}
// getter和setter省略
}
请求处理流程
当用户发送请求时,Struts2的处理流程如下:
-
请求拦截
过滤器拦截所有请求,并根据配置决定是否交给Struts2处理。 -
参数解析
将请求参数自动注入到Action类的属性中。 -
执行Action方法
执行Action中的方法(如execute()),并返回一个字符串结果。 -
结果处理
根据返回的结果字符串,跳转到对应的JSP页面或JSON数据。
结果类型与国际化的支持
Struts2支持多种结果类型,如dispatcher(转发到JSP)、redirect(重定向)、json(返回JSON数据)等。
JSON结果示例
<action name="getJson" class="com.example.JsonAction">
<result type="json">
<param name="root">data</param>
</result>
</action>
国际化支持
通过struts.i18n.encoding配置编码,并在src/main/resources目录下创建国际化资源文件:
# messages_zh_CN.properties welcome=欢迎使用Struts2! # messages_en_US.properties welcome=Welcome to Struts2!
Struts2是一个功能强大且灵活的MVC框架,适合开发中大型Web应用,通过本文的介绍,你应该已经掌握了Struts2的基本使用方法,包括环境搭建、配置文件设置、Action类创建以及请求处理流程,虽然现在有更多现代化的框架(如Spring Boot),但Struts2仍然是一个值得学习的经典框架。
希望这篇文章能帮助你快速入门Struts2!

相关文章:
文章已关闭评论!