1、package元素

作用:

在struts2的配置文件中引入了面向对象思想。分包管理,易于管理动作类,便于模块化开发动作类。

属性:

name:包的名称。名称唯一。
extends:一般情况下需要继承struts-default包,如果不继承的话,将无法使用struts2提供的核心功能。struts-default.xml中定义了struts-default这个包。而struts-default.xml是在我们的struts.xml加载之前加载。
abstract:把包声明为抽象包,抽象包被其他包继承。只要是没有元素的包,就可以声明为抽象包。
namespace:名称空间。
名称空间 + 动作名称 = 访问路径

2、action元素

作用:

配置动作用的。

属性:

name:动作名称
class:动作类全名。默认的动作类是:com.opensymphony.xwork2.ActionSupport是在struts-default.xml中定义的

method:动作类中的方法名称。默认是public String execute(){}
要求:
1.public的
2.返回值必须是String
3.没有参数

动作类:

方式一:动作类是一个POJO。

方式二:动作类实现com.opensymphony.xwork2.Action接口。
常量:给动作方法返回值用的。用常量可以使你的应用规范和统一。

常量变量名 对应的值 说明
SUCCESS success 动作方法执行一切OK
ERROR error 动作方法执行时遇到了异常
INPUT input 回显
LOGIN login 一般转向登陆页面
NONE none 不转向任何的视图

方式三:动作类继承com.opensymphony.xwork2.ActionSupport(推荐)

3、result元素

作用:

为动作指定结果视图

属性:

name:逻辑视图的名称,对应着动作方法的返回值。默认值是success。
type:结果类型,指的就是用什么方式转到定义的页面。默认是dispatcher。
在struts-default.xml中定义了type属性的取值:

结果类型 说明
dispatcher 请求转发,转向一个页面。
redirect 重定向,转向一个页面。
redirectAction 重定向到另一个动作类
chain 请求转发到另一个动作

在转发或者重定向到不同包下的动作时,都用到了result元素的子元素param。每个结果类型视图其实都是靠一个类来实现的。而param元素就是将配置的参数,注入到该类中。


最新文章

  1. Matlab && C-Mex Round 1
  2. 阿里云CDN刷新预热接口
  3. Web报表页面如何传递中文参数
  4. CF 363B One Bomb(枚举)
  5. GET和POST的区别,就是明信片和信封的区别
  6. Android系统Recovery工作原理之使用update.zip升级过程分析(一)
  7. PHP-traits新特性详解
  8. 超人学院Hadoop大数据资源共享
  9. [js高手之路] vue系列教程 - 实现留言板todolist(3)
  10. Navicat如何进行搜索筛选
  11. jQuery toastr提示简单实现
  12. ebs 12.1.1 单节点多用户安装
  13. ASP.NET MVC5入门2之Ajax实现数据查询
  14. [Object Tracking] Overview of Object Tracking
  15. 阿里云ECS服务器Linux环境下配置php服务器(一)--基础配置篇
  16. NGUI之Toggle实现单选框
  17. PAT 1139 First Contact[难][模拟]
  18. shell习题第9题:sed的常用用法
  19. django中对数据库的增删改查
  20. Memcached 之 .NET(C#)实例分析

热门文章

  1. freemarker2 指令
  2. Object和Function谁先被创建
  3. mac os x 记录 转载
  4. kotlin正式由Goole公布为Android的最新开发语言
  5. URL中?和#的区别(关于SSRF)以及mysql的secure-file-priv
  6. C# 图片识别技术(支持21种语言,提取图片中的文字)
  7. Caused by: java.lang.ClassNotFoundException[android的终极解决错误]
  8. [Java][Tomcat]在eclipse中运行tomcat报的一个错误
  9. js原型链和继承
  10. However, a general purpose protocol or its implementation sometimes does not scale very well.