Struts2入门配置

1. 什么是struts2框架?
 框架是实现了部分功能的代码的半成品,使用框架能够提高企业开发的效率。目前主流的框架是SSH(Struts2+Spring+Hibernate)。而struts2是一款标准的MVC框架,用于javaweb开发。MVC为:model模型、view视图和controller控制器。

2. 使用的struts2要导入的jar包
 需要导入的jar包有如下,目前是13个,但是这不是固定的。需要导入的jar包

3. 对struts2进行配置
<1>在web.xml中配置前端控制器(也称核心控制器)
 其实就相当于一个Filter过滤器,配置的目的是为了能够使struts2能够运行。

<filter>
        <filter-name>struts2</filter-name>
        <filter-class>      org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
        </filter-class>
</filter>
<filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
</filter-mapping>

<2>创建一个struts.xml配置文件
 这个其实就是struts2框架的配置文件,为了struts2框架流程能够执行。并且名字必须为struts.xml,文件存放的位置必须在classes下。如果使用的是Myeclipse开发,那么直接存放在src下便可以。在struts.xml的格式如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
    <package name="default" namespace="/" extends="struts-default">
        <action name="XXX" class="cn.itcast.action.XXXAction" method="XXXsay">
            <result name="good">/XXX.jsp</result>
        </action>
    </package>
</struts>

 struts.xml的标签如下:

标签子元素作用
package声明包,用于管理action标签
 name声明一个包名,在同一个包内,包名是唯一的
 namespace与action标签的name属性确定一个访问路径。默认值为”“。
 extends它代表继承的包名
 abstract取值为boolean类型,如果为true,代表这个包用于被继承
action声明一个action
 name声明一个action名称,在同一个包内必须是唯一的
 classAction文件全名。默认值:com.opensymphony.xwork2.ActionSupport
 method要访问的Action类中的方法名,该方法必须为无参,返回值为String。默认值为execute。
result用于确定返回结果的类型。默认值为:”success”
 name用于和Action方法的返回值进行比较,确定一个跳转路径或资源

 
4. struts配置文件加载顺序
 前面说过,我们要使用struts框架就必须创建一个Filter过滤器,为了能够让struts运行。现在我们来探究为什么要使用配置这个Filter文件。
 这个Filter文件加载的是StrutsPrepareAndExecuteFilter类文件,在这个类文件的初始化init方法中有个操作是初始化Dispatcher文件的操作。在这个Dispatcher类的init方法中定义了struts2配置文件的加载顺序。

            init_DefaultProperties(); // [1]
            init_TraditionalXmlConfigurations(); // [2]
            init_LegacyStrutsProperties(); // [3]
            init_CustomConfigurationProviders(); // [5]
            init_FilterInitParameters() ; // [6]
            init_AliasStandardObjects() ; // [7]

对这其中的顺序进行分析:
[1] default.properties文件
 位置:org/apache/struts2/default.properties
 作用:定义了struts2中所有的常量。

[2] struts-default.xml
 位置:struts的core核心jar包中
 作用:配置了bean、interceptor(拦截器)、result等

   struts-plugin.xml
 作用:struts2框架中所使用的插件的配置文件。(如果没有使用插件,则不存在配置文件。)

   struts.xml
 我们配置的struts2的文件。

[4] struts.properties
   作用:这个文件是自定义的,能够达到在自定义常量的目的。

[5] web.xml
   作用:第一次是我们服务器启动会加载这个文件,而这次是struts框架会去查找某些值。

在开发当中,后加载的文件配置会将先加载的文件配置覆盖,比如设置了某个数据的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值