struts.xml 是 Struts2 的核心配置文件,位于类路径根目录,以 为根节点,通过 分组、 映射请求与处理类、 定义视图跳转,并支持常量配置、配置拆分及拦截器定义。

Struts2 的 struts.xml 是框架的核心配置文件,用于定义 Action 映射、拦截器、结果类型、包结构等关键行为。它不是必须手写全部内容(可被注解或 Java 配置替代),但在多数传统项目中仍是主流配置方式。
struts.xml 必须放在类路径根目录(如 src/main/resources 或 WEB-INF/classes),且以 <struts></struts> 为根节点。最简合法结构如下:
<struts></struts>:顶层容器,可包含多个 <package></package>
<package name="xxx" extends="struts-default"></package>:逻辑分组单位,必须继承 struts-default(提供默认拦截器、结果类型等)<action name="login" class="com.example.LoginAction"></action>:定义请求路径与 Action 类的映射<result name="success">/success.jsp</result>:指定返回逻辑视图名对应的实际资源路径Action 是处理请求的核心类,默认调用 execute() 方法,返回字符串决定跳转结果。配置时注意:
login 对应 /login.action 或 /login,取决于后缀配置)ActionSupport
<param> 向 Action 注入属性值(要求 Action 有对应 setter)name="user_*" + class="com.example.User{1}Action",访问 /user_save.action 自动调用 UserSaveAction
package 不是 Java 包,而是 Struts2 的配置命名空间,用于模块化管理:
user、admin)struts-default 是所有自定义包的基础<global-results></global-results> 和 <global-exception-mappings></global-exception-mappings>,作用于该包下所有 Action除 Action 外,struts.xml 还常配置以下内容:
<constant name="struts.devMode" value="true"></constant>:开启开发模式,热加载配置、详细错误页<include file="struts-user.xml"></include>:拆分配置,便于团队协作维护<interceptors></interceptors> 块内可定义自定义拦截器或拦截器栈,供 action 引用<default-action-ref name="index"></default-action-ref>:当请求路径无匹配 action 时,转发到指定 action基本上就这些。写 struts.xml 的关键是理解 package 的继承与作用域、Action 名称与 URL 的映射规则、以及结果视图的解析逻辑。不复杂但容易忽略继承链和路径后缀设置,建议搭配 struts.devMode=true 实时验证效果。
以上就是Struts2的xml配置文件怎么写 Struts.xml核心配置文件详解的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号