struts.xml 属性介绍

一、Struts2配置文件
Struts2相关的配置文件有web.xml,struts.xml,struts.properties,
struts-default.xml,velocity.properties,struts-default.vm。其中web.xml,struts.xml是必须的,其它的配置文件可选择。它们在web应用中的功能如下:
web.xml:包含所有必须的框架组件的web部署描述符。
Struts.xml:配置包含result/view类型、action映射、拦截器等的Struts2的主要配置文件。
Struts.properties:配置struts2的框架属性。
Struts-default.xml:在文件在struts-action-x.x.jar中,该文件是应该被包含在struts.xml中的缺省配置。
Welocity.properties:重写了velocity的配置文件。
Struts-default.vm:相对于velocity的缺省配置。

二、Struts2配置元素
Struts2核心的配置文件是缺省的struts.xml。
必 要的时候,缺省的配置文件可以包含其它的配置文件;struts文件可以放入jar中,并自动插入应用程序,这样每个模块可以包含自己的配置文件并自动配 置。在Freemarker和Velocity模块中,模板也能从classpath中加载,所以整个模块可以作为一个简单的jar文件被包含。
Struts.xml配置文件可以包含Interceptor、Action类和Results。
Struts.xml配置元素说明:

1、Packages
Packages:packages把actions、results、results types、interceptors
和interceptor-stacks组装到一个逻辑单元中,从概念上讲,packages就像一个对象,可以被其它子包从写,而且可以拥有自己独立的部分。
Name属性是packages的必填元素,它作为一个关键字被后边的包引用;extends元素是可选的,它允许包扩展一个和多个前边定义的包。注意,
struts.xml文件是至上而下处理的,所有被扩展的包,需要在扩展包前定义。
Abstract元素是可选的,它可以申明一个不包含actions的配置文件。

2、Namespace
Namespace元素把actions细分到逻辑模块,每一个namespace都有自己的
前缀(prefix),namespace避免了action之间的名字冲突,当前缀出现在URI中时,这些标签都是名字空间感知的(“namespace aware”),所以这些namespace prefix不必嵌入到表单或连接中。
Default 的namespace是一个空字符串“”,如果在指定的配置文件中,没有找到action,缺省的namespace也会被查找。 Local/global策略允许应用程序在action “extends”元素层次结构之外,有全局的action配置。缺省的namespace也可以不在package中申明。
Namespace prefix可以注册为java的申明式安全,以确保授权的用户才能访问namespace的资源。
Root namespace(“/”)也被支持,root就是当直接请求context path的时候的namespace。

[个人理解:namespace的用法就像struts1.x中的path一样,只不过它在package中什么路径,而在action中申明action名子罢了]

3、Include
Include元素使得框架能应用“divide and conquer”来配置文件。被include
的每个配置文件必须和struts.xml有一样的格式,一个大的项目可以采用这样方式来组织程序模块。
Include元素也可以和package交替出现,框架将按照顺序加载配置文件。

4、Interceptor configuration
Interceptor允许应用程序在Action方法执行前后定义执行代码,
Interceptor在应用程序开发中十分重要,对于Interceptor有许多用例,如validation, property population, security, logging, 和profiling。
Interceptor被定义为一个Java类,Interceptor也可以组装成Interceptor-stack,他们将按照定义的顺序执行。
在struts-default.xml中定义了一些缺省的Interceptor-stack,以便框架能很好地运行。

5、Action
Action是框架的“工作单元”。Action可以指定一个Interceptor-stack、

一序列的return type和一序列的异常处理,但只有name属性是必须的。

转自:星星的愿望

转载于:https://www.cnblogs.com/javaspring/archive/2012/06/12/2656123.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/422420.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高一计算机网络技术应用计划,高一计算机网络应用基础教学计划

高一计算机网络应用基础教学计划 成都市工程职业技术学校 学期授课计划 授课学期 2015年上学期 课程名称 计算机网络应用基础 适用班级 2014级计算机 1 班 任课教师: 袁冬梅 2015 年 3 月 9 日制订 教研组长: 刘清太 2015 年 月 日审查 专业部主任&#…

带电插拔损坏设备原理_Win10拔U盘不用再点“安全弹出”了,XP和Win7老用户都眼馋了...

用过U盘的人都知道,当我们拔出U盘时,需要手动点击“删除USB硬件”以保证U盘结束运行,如强行拔出,轻则损坏数据,重则U盘报废,但其实很多人都不记得就直接拔了。不过最近微软传出好消息,5月将更新…

使用 Jackson 树连接线形状

将“树连接线”形状上的端点 粘附到“进程”或“过程”形状上的连接点 上。将“树连接线”形状上分支末端的控制手柄 拖到其他形状上的连接点 处。拖动“树连接线”形状中心的控制手柄 ,可最多再添加四个分支。要向连接线添加文字,先选择该形状&…

现代计算机应用特点,现代计算机的特点和计算机的发展

原标题:现代计算机的特点和计算机的发展现代计算机的特点:1 采用二进制代码表示程序和数据,计算机可直接识别0,1;2 存储程序控制;3 基本部件有5个:运算器,控制器,存储器,…

华为云计算值班电工_华为FusionModule2000智能微模块荣获2019云计算中心科技奖卓越奖...

5月15日-16日,2019中国数据中心市场年会在北京隆重举行,该会议由国家节能中心指导,中国电子节能技术协会数据中心节能技术委员会主办。华为FusionModule2000智能微模块凭借业界领先的iAI技术在众多参评技术中脱颖而出,得到评奖专家…

冒泡排序算法[C++]

冒泡排序应该是最容易实现的一种排序算法了。其基本思想是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数&#…

win2012 ad用户和计算机,Server2012R2搭建AD域服务器并添加登录用户

只选择Active Directory域服务下一步不选,继续下一步完成安装,并将此服务器提升为域控制器添加新林,并添加要域名,然后下一步添加密码,下一步忽略,继续下一步忽略,继续下一步安装完成之后会自动…

昆山立讯电子工程师_教会徒弟饿死师傅?立讯精密会不会成为第二个富士康

小编的话:宣布收购案后,立讯精密再次站在台前。这家企业2004年初创,2010年上市后,老板王来春从早年的“厂妹”成为了财富榜上有名的富豪,预计2020年底立讯将完成对纬创子公司的收购,切入苹果产品iphone的供…

源码搭建lamp环境

一、编译LAMP前的准备工作 1、下载用到的源码包 zlib http://www.zlib.org php http://www.php.net/downloads.php ncurses http://ftp.gnu.org/pub/gnu/ncurses/ mysql http://download.mysql.cn/ libxml2 http://xmlsoft.org/downloads.html libpng http://www.libpng.org/pu…

html展示pdf文件流,使用pdfjs提供的viewer.html展示pdf文件流

1.到官网下载包https://github.com/mozilla/pdf.js/releases/download/v1.10.88/pdfjs-1.10.88-dist.zip2.解压包到开发工程中3.修改viewer.js1)var DEFAULT_URL compressed.tracemonkey-pldi-09.pdf 里面是PDF的路径删除该变量定义;2)1899行var fileOrigin new URL(file, w…

javagei图片设置热点_【物理考点】重磅押题: 2020高考物理必考热点+命题预测+例题解析, 快快快收藏!...

本文目录:?动量守恒问题命题热点:(1)结合生活现象考查动量定理的简单应用(2)联系生活实际考查动量守恒定律的简单应用(3)动量与能量综合考查?图像问题命题热点:(1)涉及运动学的图像问题(2)涉及动力学的图像问题(3)设计曲线运动与万有引力的…

为什么到今天还要坚持写博客(转)

几年前,写博客是非常流行的,但是自从Facebook和Twitter出现之后,它显然有些失宠。但我想告诉你,到今天你都应该开设你自己的博客,如果你有自己的博客,但有一段时间没有更新了,你应该回到那里并发…

emlog链接html,emlog如何做站内外链跳转优化教程

$t_url$_GET[url];if(!empty($t_url)) {preg_match(/(httpss|https):\/\//,$t_url,$matches);if($matches){$url$t_url;$title页面跳转中,请稍候...;} else {preg_match(/\./i,$t_url,$matche);if($matche){$urlhttpss://.$t_url;$title页面跳转中,请稍候...;} else {$urlhttps…

JQuery Tab菜单的实现

一个tab面板 <div id"tab"> <div class"menu"> <div class"menuItem">1</div> <div class"menuItem">2</div> <div class"menuItem">3</div> <div class"menuItem…

怎么隐藏桌面计算机名,Win7隐藏桌面所有图标

问&#xff1a;怎么隐藏Win7桌面所有图标&#xff1f;我家电脑是微软的Windows 7系统&#xff0c;桌面上有很多软件的图标。请问怎么把Win7桌面上所有图标都隐藏起来&#xff1f;注意我的要求是隐藏&#xff0c;而不是删除哦&#xff01;答&#xff1a;隐藏Win7桌面上所有图标的…