struts1.* 核心配置文件struts-config.xml详解
首先struts-config.xml是struts框架的核心配置文件,其中内嵌如下标签:
1、
这是一个主标签,struts配置文件内的所有标签都必须包含在此标签下,且仅能允许有一对该标签;
2、
该标签就是给当前配置文件进行命名
3、
可以认为是一种注释
4、
描述当前模块下的表单描述器集合,在其内部可以设置多个
,而每一个表单描述器又对应着一个表单类,数目最多一个;
5、
用来设定表单处理类,其子元素
相应属性含义:
classname :用来指定与form-bean 对应的配置类,一般默认使用org.apache.struts.config.formbeanconfig ,也可以自定义处理类,但需要继承formbeanconfig类
name :form-bean 的名称 ,具有唯一性
type :form-bean 对应的类
6、 用来设置actionform 的属性,该属性的名称和属性的类型与actionform类属性和jsp 界面上的属性一一对应;
相应属性含义:
classname:用来指定与form-property 对应的配置类,一般默认使用org.apache.struts.config.formpropertyconfig ,也可以自定义处理类,但需要继承formpropertyconfig类
name :form-property 的名称 ,具有唯一性
type :form-property 属性的数据类型
initial:指定属性的初值,如果没有设定初始值,则默认为相应数据类型的初值如是java.lang.integer 则默认初始值为0;
7、 当前模块下的全局异常处理类集合,子元素为
8、 配置异常处理类(红色为必须)
classname:指定对应exception的配置类,默认为org.apache.struts.config.exceptionconfig
handler:指定异常处理类,默认为org.apache.struts.action.exceptionhandler
key:指定在resource bundle种描述该异常的消息key
path:指定当发生异常时,进行转发的路径
scope:指定actionmessage实例存放的范围,默认为request,另外一个可选值是session
type:必须要有!指定所需要处理异常类的名字。
bundle:指定资源绑定
9、 配置全局跳转 最多一个,子元素
10、 可以配置多个
classname:指定和forward元素对应的配置类,默认为org.apache.struts.action.actionforward
contextrelative:如果为true,则指明使用当前上下文,路径以“/”开头,默认为false
name:指明转发路径的唯一标识符 在action中通过该名称实现对跳转方向的调用
path:指明转发或者重定向的uri。必须以"/"开头。具体配置要与contextrelative相应。
redirect:为true时,执行重定向操作,否则执行请求转发。默认为false
11、 定义action集合,子元素 最多只有一个
12、定义从特定的请求路径到相应的action类的映射 可以有多个,子元素 指定相应跳转
attribute:制定与当前action相关联的actionform bean在request和session范围内的名称(key)
classname:与action元素对应的配置类。默认为org.apache.struts.action.actionmapping
forward:指名转发的url路径
input:指名包含输入表单的url路径,表单验证失败时,请求会被转发到该url
name:指定和当前acion关联的actionform bean的名字。该名称必须在form-bean元素中定义过。
path:指定访问action的路径,以"/"开头,没有扩展名
parameter:为当前的action配置参数,可以在action的execute()方法中,通过调用actionmapping的getparameter()方法来获取参数
roles:指定允许调用该aciton的安全角色。多个角色之间用逗号分割。处理请求时,requestprocessor会根据该配置项来决定用户是否有调用该action的权限
scope:指定actionform bean的存在范围,可选值为request和session。默认为sessi
type:指定action类的完整类名
unknown:值为true时,表示可以处理用户发出的所有无效的action url。默认为f
validate:指定是否要先调用actionform bean的validate()方法。默认为true
注意:如上属性中,forward/include/type三者相斥,即三者在同一action配置中只能存在一个。
13、用于配置actionservlet
buffersize:指定上传文件的输入缓冲的大小.默认为4096
classname:指定当前控制器的配置类.默认为org.apache.struts.config.controllerconfig
contenttype:指定相应结果的内容类型和字符编码
locale:指定是否把locale对象保存到当前用户的session中,默认为false
processorclass:指定负责处理请求的java类的完整类名.默认org.apache.struts.action.requestprocessor
tempdir:指定文件上传时的临时工作目录.如果没有设置,将才用servlet容器为web应用分配的临时工作目录.
nocache:true时,在相应结果中加入特定的头参数:pragma
,cache-control,expires防止页面被存储在可数浏览器的缓存中,默认为false
14、 配置struts插件 子元素:
classname:指定struts插件类.此类必须实现org.apache.struts.action.plugin接口
15、 配置插件的属性
property:插件的属性名称
value:该名称所配置的值
注:1、上述介绍的所有标签必须按照介绍的先后顺序进行设置,否则将会报错
2、本来要介绍一下标签但是在struts1.3中已经取消了标签,也就是说只能在1.2版中配置,因为apache不推荐在struts-config.xml中配置数据源。所以建议不要在struts中配置数据源,如果你用了hibernate或spring得话就可以在hibernate配置文件或spring文件配数据源如果都没用就到tomcat中配置
阅读(15768) | 评论(1) | 转发(0) |