Struts2的配置

  Struts2可以通过Convention插件管理Action和结果映射,也可以通过使用XML文件进行管理,这两种方式各有好处:使用Convention插件管理减少了XML文件的编写量,根据“约定”的方式寻找相关Action或结果映射,相对于使用XML文件配置便于开发,但最大的弊端是后期不利于维护和修改,所以建议考虑使用XML文件管理Struts2的配置信息。

常量配置:

  Struts2的常量对应用的整体起作用,也被称为Struts2属性。

Struts2配置常量的方法有三种:

1.通过struts.properties文件进行配置:

  struts.properties文件是一个标准的配置文件,在此文件中包含了许多的key-value对,其中key就是一个常量,value就是此常量的值。此文件在eclipse中也直接放在src目录下即可。

2.通过struts.xml文件进行配置;

  在struts.xml中使用<constant>标签来配置常量,如下:

<?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>
    <!-- 常量配置,即属性配置 -->
    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="true" />

    <package name="test" extends="struts-default">
        <!--
            定义了名为test_1的Action;
            处理请求的Action类为testAction.Test_1Action.java
         -->
        <action name="test_1" class="testAction.Test_1Action">
            <!-- 定义逻辑视图与物理视图之间的映射关系 -->
            <result name="error">/WEB-INF/error.jsp</result>
            <result name="success">/WEB-INF/welcome.jsp</result>
        </action>
    </package>
</struts>

  其中name属性就相当于struts.properties中的key,value属性就相当于struts.properties中的value。

3.通过应用的web.xml进行配置。

  在web.xml配置StrutsPrepareAndExecuteFilter时也配置常量,这时的常量是初始化参数,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <!-- 定义核心拦截器 -->
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        <!-- 在配置StrutsPrepareAndExecuteFilter时配置初始化参数 -->
        <init-param>
            <param-name>struts.enable.DynamicMethodInvocation</param-name>
            <param-value>false</param-value>
        </init-param>
    </filter>
    <!-- 使核心拦截器拦截所有的请求 -->
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

通常使用struts.xml配置常量。

Struts2中加载常量的搜索顺序:

1.struts-default.xml;

2.struts-plugin.xml;

3.struts.xml;

4.struts.properties;

5.web.xml。

当后一个配置文件中有与前一个配置文件中相同的常量时,后边配置文件中的常量会覆盖前面配置文件中的常量。

包含配置文件:

  struts.xml中可以通过include导入配置文件。被导入的配置文件与标准的配置文件相同,只不过有不同的配置信息。

<?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>
    <!-- 常量配置,即属性配置 -->
    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="true" />
    <!-- 导入配置文件 -->
    <include file="struts-test1.xml"/>
    <package name="test" extends="struts-default">
        <!--
            定义了名为test_1的Action;
            处理请求的Action类为testAction.Test_1Action.java
         -->
        <action name="test_1" class="testAction.Test_1Action">
            <!-- 定义逻辑视图与物理视图之间的映射关系 -->
            <result name="error">/WEB-INF/error.jsp</result>
            <result name="success">/WEB-INF/welcome.jsp</result>
        </action>
    </package>
</struts>

Struts2的配置的更多相关文章

  1. Struts2 基本配置

    Struts2是一个优秀的MVC框架,也是我比较喜欢用的框架.它个各种配置基本都可以集中在一个xml文档中完成.现在让我们看看如何简单几步实现常用功能. 一.搭建Struts2的开发环境 1)首先是利 ...

  2. Struts2 XML配置详解

    struts官网下载地址:http://struts.apache.org/   1.    深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置. 1.1.    包配置: S ...

  3. struts2 action配置时 method 省略不写 默认执行方法是父类ActionSuppot中的execute()方法

    struts2 action配置时 method 省略不写 默认执行方法是父类ActionSuppot中的execute()方法

  4. struts2环境配置

    struts2环境配置 struts2框架,大多数框架都在使用.由于工作需要,开始做Java项目.先学个struts2. 一.下载struts2 有好多版本,我下载的是struts-2.2.1.1. ...

  5. 在Struts2中配置Action

    在Struts2中配置Action <package>: 1.定义Action使用<package>标签下的<action>标签完成,一个<package&g ...

  6. Struts2的配置和一个简单的例子

    Struts2的配置和一个简单的例子 笔记仓库:https://github.com/nnngu/LearningNotes 简介 这篇文章主要讲如何在 IntelliJ IDEA 中使用 Strut ...

  7. 1-1 struts2 基本配置 struts.xml配置文件详解

    详见http://www.cnblogs.com/dooor/p/5323716.html 一. struts2工作原理(网友总结,千遍一律) 1 客户端初始化一个指向Servlet容器(例如Tomc ...

  8. spring+hibernate+struts2零配置整合

    说句实话,很久都没使用SSH开发项目了,但是出于各种原因,再次记录一下整合方式,纯注解零配置. 一.前期准备工作 gradle配置文件: group 'com.bdqn.lyrk.ssh.study' ...

  9. struts2基本配置详解2

    接上篇struts2基本配置详解,还有一些配置没有讲到,下面将继续. struts.xml <package name="com.amos.web.action" names ...

随机推荐

  1. demo04calc

    package com.example.demo05simplecalc; import android.os.Bundle; import android.app.Activity; import ...

  2. 关于mybatis 在C#.Net中批量增,删,改

    发现很久没有更新空间里的日志了,有时候实在忙没有时间记录,有时候又觉得自己整理的不够清晰,还是缓缓在记录吧. 下面直接进入正题 对于急需方法的阅读者  可以直接转至代码以下忽略 对于数据库进行操作的类 ...

  3. Spring容器中的Bean

    一,配置合作者的Bean Bean设置的属性值是容器中的另一个Bean实力,使用<ref.../>元素,可制定一个bean属性,该属性用于指定容器中其他Bean实例的id属性 <be ...

  4. python入门语法总结 zz

    http://renjie120.iteye.com/blog/680126 1.python是一个解释性语言: 一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计 ...

  5. PAT乙级 1016. 部分A+B (15) C语言实现

    1016. 部分A+B (15) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 正整数A的“DA(为1位整数)部 ...

  6. zw版【转发·台湾nvp系列Delphi例程】HALCON OverpaintRegion2

    zw版[转发·台湾nvp系列Delphi例程]HALCON OverpaintRegion2 unit Unit1;interfaceuses Windows, Messages, SysUtils, ...

  7. zw版【转发·台湾nvp系列例程】HALCON MirrorRegion (Delphi)

    zw版[转发·台湾nvp系列例程]HALCON MirrorRegion (Delphi) procedure TForm1.Button1Click(Sender: TObject);var img ...

  8. sql多表查询(out join,inner join, left join, right join)

    left join以左表为基准显示所有左表的信息,在on中有符合条件的其他表也显示出来 right join则相反 inner join的只显示on中符合条件的 1 使用多个表格 在「world」资料 ...

  9. lamp环境编译(实际通过)

    CentOS:5.5Apache:2.2.9PHP:5.2.6MySQL:5.0.41 条件: yum install gccyum install gcc-c++ vi/etc/yum.repos. ...

  10. centos7重启rsyslog服务|centos7重启syslog服务

    centos7重启rsyslog服务: systemctl restart rsyslog 使用:(killall无效) killall -HUP rsyslog