struts.xml语法
<!--
1. struts.xml配置常量, 用来覆盖struts.properties中的默认常量配置
一般情况下, 这个配置放在struts.xml中, 不要放在各个模块的xml中.
constant元素和package是同一个级别的
<struts>
<constant name="" value=""></constant>
</struts> 2. 模块xml配置文件引入
```
<struts>
<include file="各个模块的xml配置文件"></include>
</struts>
``` 3. 常用常量
1)开发模式:修改struts.xml之后,不用重启Tomcat.
devMode模式是开发模式,开启它则默认开启了i18n.reload、configuration.xml.reload.
<constant name="struts.devMode" value="true" />
2)设置当struts的配置文件修改后,系统是否自动重新加载该文件: 默认值为false(生产环境下使用),开发阶段最好打开
<constant name="struts.configuration.xml.reload" value="true"/>
3)指定每次请求到达,重新加载资源文件
<constant name="struts.i18n.reload" value="true"/>
4)指定XSLT Result使用样式表缓存
<constant name="struts.xslt.nocache" value="true"/>
5)设置actionName的后缀: 默认值是action,即所有匹配*.action的请求都由Struts2处理。
如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开
<constant name="struts.action.extension" value="action,,"/>
6)默认的视图主题
<constant name="struts.ui.theme" value="simple" />
7)设置浏览器是否缓存静态内容: 默认值为true(生产环境下使用),开发阶段最好关闭
true: 表示有缓存, false:表示没有缓存
<constant name="struts.serve.static.browserCache" value="false"/>
8)设置是否支持动态方法调用
<constant name="struts.enable.DynamicMethodInvocation" value="false"/>
9)指定默认编码集,作用于HttpServletRequest的setCharacterEncoding方法 和freemarker 、velocity的输出
<constant name="struts.i18n.encoding" value="UTF-8"/>
8)... 4. 各个元素
1)package: 是struts.xml根元素(strtus)的子元素. 用来管理多个action元素.
* 格式为:
<package name="" extends="" namespace="" abstract="true/false">
* 用法: 一个模块分出一个<package>元素.
* 常用的属性:
- name: 表示当前<package>元素的名称,多个<package>元素的name不能相同.
- extends: 自定义的<package>元素必须继承于包struts-default或其的子包.
- namespace: 命名空间,和actionName共同决定了一个action的访问路径, 与程序中的命名空间的作用类似.
- abstract: 表示当前<package>元素是否是抽象的.
如果为true,那么当前<package>就不能定义action元素,只能用于被其他<package>所继承.
2)action: 是<package>元素的子元素,用于配置Action类. 表示对一次请求的动作的配置:找哪一个类的哪一个方法.
* 语法:<action name="" class="" method="">
* 常用属性:
- name: action的名称,该名称和当前action所在package的namespace共同决定了访问路径.
访问Action的格式:http://host:port/contextPath/namsspace/actionName[.action]
注意:action名称没有/,在同一个<package>不能同名.
- class: Action类的全限定名,表示把哪一个Action对象交给Strtus2框架来管理.
class的默认值:com.opensymphony.xwork2.ActionSupport.
- method: 当前action需要执行哪一个方法.
method的默认值:execute.
3)result元素:是<action/>元素的子元素,表示对应的action的执行结果: `action执行完成后输出哪个页面`.
* 语法格式:<result name="" type=""></result>
* 分类: 先在当前的Action中找, 找不到就去找<global-results>中的result, 如果还找不到→报错;
- 全局: 配置在<package>元素中的<global-results>元素里面,<package>下的所有Action都可以跳转进去.
- 局部: 配置在<action>元素里面,就只能在当前Action中跳转.
$ 在配置的时候需要先配置global, 然后才能配置action
* 常用属性及文本:
- name属性: 同一个action中的result的name不能同名,该name就是action方法的返回结果.默认值:success.
- type属性: 表示资源的跳转方式(请求转发/URL重定向...),这些属性存放在struts-default包.默认:dispatcher.
~ dispatcher: 请求转发:(Action请求转发到JSP),是默认值.
~ redirect: URL重定向:(Action重定向到JSP).
~ chain: 请求转发:(Action请求转发到Action).
~ redirectAction: URL重定向:(Action重定向到Action).
~ stream: 文件下载.
- innerText: 表示需要跳转资源的路径. -->
struts.xml语法的更多相关文章
- Struts.xml讲解
解决在断网环境下,配置文件无提示的问题我们可以看到Struts.xml在断网的情况下,前面有一个叹号,这时,我们按alt+/ 没有提示,这是因为” http://struts.apache.org/d ...
- Struts2中有关struts-default.xml,struts.xml,struts.properties文件详解
1) struts-default.xml 这个文件是struts2框架默认加载的配置文件.它定义struts2一些核心的bean和拦截器. <?xml version="1.0&qu ...
- struts2中struts.xml配置文件详解
struts.xml的常用配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts ...
- 学习Struts--Chap03:struts.xml常用配置(基础)
1.package属性 name:包名 用来唯一的指定一个package.package可以扩展,当一个package扩展自 另一个package时该package会在本身配置的基础上加入扩展的pac ...
- struts.xml中的配置常量的含义
struts.serve.static.browserCache 该属性设置浏览器是否缓存静态内容.当应用处于开发阶段时,我们希望每次请求都获得服务器的最新响应,则可设置该属性为false. stru ...
- 配置文件Struts.xml 中type属性 redirect,redirectAction,chain的区别
1.redirect:action处理完后重定向到一个视图资源(如:jsp页面),请求参数全部丢失,action处理结果也全部丢失. 2.redirectAction:action处理完后重定向到一 ...
- Action的三种实现方式,struts.xml配置的详细解释及其简单执行过程(二)
勿以恶小而为之,勿以善小而不为--------------------------刘备 劝诸君,多行善事积福报,莫作恶 上一章简单介绍了Struts2的'两个蝴蝶飞,你好' (一),如果没有看过,请观 ...
- 3. 解析 struts.xml 文件
1. struts.xml 文件基本配置: 主要放在资源路径下,配置 sturts2相关的 Action , 拦截器等配置 <struts> <!-- 设置常量 --> < ...
- 【学习笔记】Struts2之配置文件struts.xml
在默认情况下,Struts2只自动加载类加载路径下的struts.xml.default-struts.xml和struts-plugin.xml三类文件.但是随着应用规模的增大,系统中Action数 ...
随机推荐
- eclipse 开始运行提示 Java was started but returned exit code=13
Eclipse 是一个开放源代码的.基于Java的可扩展开发平台.就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境. 当我们安装使用时,会出现eclipse启动不了,出现" ...
- python中关于元组的操作
元组的基本操作:1.创建一个元组: tuple=(1,26); tuple1=(","sy"); 创建一个空元组: tuple=(); 元组中只包含一个元素时,需要在元素 ...
- EM算法 大白话讲解
假设有一堆数据点,它是由两个线性模型产生的.公式如下: 模型参数为a,b,n:a为线性权值或斜率,b为常数偏置量,n为误差或者噪声. 一方面,假如我们被告知这两个模型的参数,则我们可以计算出损失. 对 ...
- 【c基础】之 文件及其操作
文件的打开与关闭 首先要定义一个文件指针类型,格式为 FILE *文件指针名; ; FILE *fp; //fp就是定义的文件指针 ●打开文件fopen()函数,格式: fp = fopen(&quo ...
- TypeScript入门指南(JavaScript的超集)
TypeScript入门指南(JavaScript的超集) 你是否听过 TypeScript? TypeScript 是 JavaScript 的超集,TypeScript结合了类型检查和静态分析 ...
- 支付宝ios支付请求Java服务端签名报的一个错(ALI40247) 原创
今天做app的支付宝支付,遇到些问题,以前做支付宝支付签名都是直接在客户端App进行,今天下了最新版本ios的支付宝支付demo,运行demo时底部有红色的显眼字体,告知用户签名必须在服务端进行... ...
- 蓝桥网试题 java 入门训练 圆的面积
---------------------------------------------------------------------------------------------------- ...
- ubuntu服务器远程连接xshell,putty,xftp的简单使用教程
当你自己千辛万苦终于搞到一个服务器(ubuntu(linux)系统的)之后,却不知道怎么进行时,xshell,putty,xftp是个很不错的选择 xshell和xftp是win下访问ubuntu(l ...
- PROC UNIVARIATE过程
EDA(探索性数据分析)最常用的过程步之一就是PROC UNIVARIATE. 首先先看一个最简单的PROC UNIVARIATE程序: PROC UNIVARIATE DATA=SASHELP.FI ...
- 基于Ceph快照的异地灾备设计
作者:吴香伟 发表于 2017/02/06 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 喜欢请点击右边打赏,谢谢支持! 引子 技术改变生活. 越来越方便的手机 ...