springboot 整合struts2(希望你用不到)

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 6.0//EN" "https://struts.apache.org/dtds/struts-6.0.dtd"> <struts> <!-- 开发模式开关 --> <constant name="struts.devMode" value="false" /> <!-- URl匹配模式,变量名namedVariable,正则regex --> <constant name="struts.patternMatcher" value="namedVariable" /> <!-- 当设置为 true 时,在构建 URL 时将始终选择完整的命名空间。如果命名空间是层次结构的一部分,则此设置确保 URL 中包含完整的命名空间路径 --> <constant name="struts.mapper.alwaysSelectFullNamespace" value="true" /> <!-- 用于定义 UI 组件模板所在的目录。Struts 2 中的 UI 组件(比如标签库)可能使用这个目录中的模板来渲染用户界面 --> <constant name="struts.ui.templateDir" value="classpath:/static/" /> <!-- Struts 2 在渲染 UI 组件时从指定的路径加载静态资源,必须斜线打头,不以斜线结尾 --> <constant name="struts.ui.staticContentPath" value="/static" /> <!-- 日期格式化 --> <constant name="struts.date.formatter" value="yyyy-MM-dd HH:mm:ss" /> <!-- action 后缀 --> <constant name="struts.action.extension" value="do,," /> <!-- 当这个配置项设置为 true 时,Struts 2 将会监视类文件的变化,当检测到类文件被修改时,会自动重新加载这些类,从而使应用程序可以在不重启服务器的情况下应用最新的代码变更 --> <constant name="struts.convention.classes.reload" value="true" /> <!-- 当这个配置项设置为 true 时,允许在不同的命名空间(Namespace)中使用相同的 Action 配置。这样,在不同的命名空间下可以有相同前缀的 Action 名称而不会产生冲突 --> <constant name="struts.mapper.action.prefix.crossNamespaces" value="true" /> <constant name="struts.allowed.action.names" value="^[a-zA-Z_$][a-zA-Z_$0-9]*(/[a-zA-Z_$][a-zA-Z_$0-9]*)*$" /> <!-- 约定分隔符 --> <constant name="struts.convention.action.name.separator" value="/" /> <!-- 约定的包名关键字 --> <constant name="struts.convention.package.locators" value="action,actions,struts,struts2" /> <!-- 约定的Action后缀 --> <constant name="struts.convention.action.suffix" value="Action" /> <!-- 当这个配置项设置为 true 时,Struts2 会尝试将请求映射到符合请求的所有 Action。这意味着,在请求 URL 匹配多个 Action 时,Struts 2 将尝试调用所有匹配的 Action 方法 --> <constant name="struts.convention.action.mapAllMatches" value="true" /> <!-- 结果类型 --> <constant name="struts.convention.relative.result.types" value="dispatcher,json,freemarker" /> <!-- 默认为true,整合springboot项目会导致扫描到约定的 action 数量为0 - --> <constant name="struts.convention.exclude.parentClassLoader" value="false" /> <!-- 结果路径 --> <constant name="struts.convention.result.path" value="/static/" /> <!-- struts的action包扫描路径 --> <!-- <constant name="struts.convention.package.locators.basePackage" value="com.example.demo.action,com.example.demo.action.*" /> --> <!-- struts2 的自动装配由谁来完成,这里是 spring --> <constant name="struts.objectFacatory" value="spring" /> <!-- 用这个常量去改变装配的规则 name, type, auto, constructor 四个值 --> <constant name="struts.objectFactory.spring.autoWire" value="auto" /> <!-- 该属性设置Struts 2是否允许在Action名中使用斜线,该属性的默认值是false。如果开发者希望允许在Action名中使用斜线,则可设置该属性为true。 --> <constant name="struts.enable.SlashesInActionNames" value="true" /> <!-- 文件上传配置 --> <constant name="struts.multipart.parser" value="jakarta" /> <constant name="struts.multipart.saveDir" value="D:/dev_tools/nginx-1.25.3/html" /> <!-- 默认最大上传 2MB 的文件 --> <constant name="struts.multipart.maxSize" value="2097152" /> <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant> </struts>