三、Struts2的配置文件

一、Struts2的配置文件类型

struts-default.xml----位于struts2-core-2.1.8.文件的org.apache.struts2包中

struts-plugin.xml-----位于struts2提供的各个插件的包中

struts.xml------------Web应用默认的Struts配置文件

struts.properties-----Struts框架中属性配置文件

web.xml---------------此文件是web应用的web.xml文件中,在此文件中也可以放置Struts2框架的一些信息

 

二、Struts的包配置

<struts>

  <!--声明包-->

  <package name="user" extends="struts-default" namespace="/user">

  ...

  </package>

</struts>

name:声明包的名称,以方便在其他处引用此包,此属性是必需的

extends:用于声明继承的包,也就是它的“父”包

namespace:指定名称空间,也就是访问此包下的Action需要访问的路径

abstract:将包声明为抽象类型(包中不定义action)

 

三、名称空间配置

在配置文件struts.xml的包声明中,使用“namespace”属性进行声明。指定名称空间值需要以“/”开头,否则找不到Action对象的地址。

 

四、Action相关配置

<action name="userAction" class="com.lyq.action.userAction" method="save">

  <result>success.jsp</result>

</action>

配置文件中的<action>元素用于建立Action对象的映射,通过<action>元素可以指定Action请求地址及处理后的映射页面

name:用于配置Action对象被请求的URL映射

class:指定Action对象的类名

method:设置请求Action对象时,调用Action对象的哪一个方法

converter:指定Action对象类型转换器的类

 

UserAction.java

public class UserAction extends ActionSupport {
    private static final long serialVersionUID = 1L;
    // 添加用户信息
    public String save() throws Exception{
       return SUCCESS;
    }
    // 更新用户信息
    public String update() throws Exception{
        return SUCCESS;
    }
    public String delete() throws Exception{
        return SUCCESS;
    }
    public String find() throws Exception{
       return SUCCESS;
    }
}

调用一个Action对象,默认情况下,它执行的是execute()方法,如果需要请求指定的方法,可以通过<action>元素的method属性进行配置。

struts.xml

<!--添加用户-->

<action name="userAction" class="com.lyq.UserAction" method="save">

  <result>success.jsp</result>

</action>

<!--w修改用户-->

<action name="userAction" class="com.lyq.UserAction" method="update">

  <result>success.jsp</result>

</action>

<!--删除用户-->

<action name="userAction" class="com.lyq.UserAction" method="delete">

  <result>success.jsp</result>

</action>

<!--查询用户-->

<action name="userAction" class="com.lyq.UserAction" method="find">

  <result>success.jsp</result>

</action>

 

五、通配符实现简化配置

在Struts2的配置文件struts.xml中,常用的通配符主要有两个-----------通配符“*”与通配符“/”。

通配符“*”匹配0或多个字符

通配符“/”是一个转义字符,如果匹配“/”,则使用“/”进行匹配

<struts>

  <package name="myPackage" extends="struts-default" namespace="/">

    <action name="add" class="com.lyq.action{1}AddAction">

      <result name="success">/success.jsp</result>

      <result name="input">/input.jsp</result>

      <result name="error">/error.jsp</result>

    </action>

  </package>

</struts>

 

六、返回结果的配置

(1)浏览器请求Action

(2)Action执行execute()

(3)Action查找视图(根据struts.xml)

(4)struts.xml返回视图给Action

(5)Action回应浏览器

 

<action>

  <!--结果映射-->

  <result>/user/Result.jsp</result>

  <!--结果映射-->

  <result name="error">/user/Error.jsp</result>

  <!--结果映射-->

  <result name="input">/user/Input.jsp</result>

</action>

<result>元素有两个属性,分别为name属性、type属性。其中。name属性用于指定Result的逻辑名称,它与Action对象中方法返回值相对应,

如execute()方法返回值为“input”,那么就将<result>元素的name属性配置为“input”对应Action对象返回值。<result>元素的type属性用于设置返回结果的类型,如请求转发、重定向等。

如果不设置<result>元素的name属性,默认情况下,它的值为“success”

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值