struts2学习笔记-struts2的配置文件

一、struts.xml定义Bean的作用:
    1.创建该Bean的实例,将该实例作为Struts2框架的核心组件使用。
     2.Bean包含的静态方法需要一个值注入。很方便地允许不创建某个类的实例,却可以接受框架常量。通常需要设置static=“true”。通常,当指定了type属性时,该属性不应该制定为true。
     可以参考core包里的struts-default.xml文件。

二、struts2常量的配置
    1.通常在struts.xml文件中定义struts2属性,当然也可以在struts.properties文件中配置,还可以在web.xml文件中配置Struts2常量。
    2.struts2框架按如下搜索顺序加载struts2常量:
    (1)、struts-default.xml:该文件保存在struts2-core-2.0.6.jar文件中。
    (2)、struts-plugin.xml:该文件保存在struts2-Xxx-2.0.6.jar等Struts2插件jar文件中。
    (3)、struts.xml:该文件是Web应用默认的Struts2配置文件。
    (4)、struts.properties:该文件是Web应用默认的Struts2配置文件。
    (5)、web.xml:该文件是Web应用的配置文件。
如果在多个文件中配置了同一个Struts2常量,则后一个文件中配置的常量值会覆盖前面文件中配置的常量值。
    配置Struts2常量必须要指定的两个属性:常量name和常量value。
    struts.xml文件通过constant元素来配置常量。
    struts.properties文件的内容是系列的key-value对,key对应Struts2常量name,value对应value。
    web.xml文件中配置struts2常量,可通过<filter>元素的<init-param>子元素指定,每个<init-param>元素配置了一个Struts2常量。

三、包的配置
    1.配置包是,必须指定name属性,这个属性是其他包引用该包的key。除此之外,还可以指定一个可选的extends属性,extends属性值必须死另一个包的name属性,指定extends属性表示让该包继承其他包,子包可以继承一个或多个父包中的拦截器、拦截器栈、action等配置。
    2.抽象包,含义:该包不能包含Action定义,显示指定:为该package元素增加abstract=“true”属性

    3.namespace属性,包的命名空间。默认命名空间为""。当某个包指定了命名空间后,该包下所有的Action处理的URL应该是命名空间+Action名。例:访问/book命名空间下的action为:http://localhost:8080/namespace(应用程序名)/book(action所在包对应的命名空间)/book.action(action名)。另外还可以显示指定根命名空间,通过设置某个包的namespac=“/"来指定命名空间。

    注意:如果该命名空间下没该Action,那么系统就会直接访问默认命名空间下的Action,不会访问其他的action,如果没有,则出错。

 

四、包含配置

    Struts2默认只加载WEB-INF/classes下的struts.xml文件,我们可以通过struts.xml文件来包含其他配置文件。例:在<struts />跟目录下配置<include .../> 元素来完成。<struts>....<include file="com.bbs.model.struts-user.xml" />....</struts>

 

五、拦截器配置

    拦截器其实就是AOP(面向切面编程)的编程思想。拦截器允许在Action处理之前,或者处理结束之后,插入开发者自定义的代码。

    定义拦截器栈必须先定义组成拦截器栈的多个拦截器。Struts2把拦截器栈当成拦截器处理,因此拦截器和拦截器栈都放在<interceptors.../>元素中定义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值