`
mywebcode
  • 浏览: 999858 次
文章分类
社区版块
存档分类
最新评论

struts2入门(2)

 
阅读更多

Struts2中结果集类型

1、每个action方法都返回一个String类型的值,struts一次请求返回什么值是由这个值确定的。

2、在配置文件中,每一个action元素的配置都必须有result元素,每一个result对应一个action的返回值。

3、Result有两个属性:

name:结果的名字,和action中的返回值一样,默认值为success;

type:响应结果类型,默认值为dispatcher.

在struts2核心jar包下面找到struts-default.xml文件中,如下面所示:

说明:

1、从上述可以看出总共10种类型

2、默认类型为ServletDispatcherResult即转发。

3、结果类型可以是这10种结果类型的任意一种。

Dispatcher类型

(1)、说明

Dispatcher类型是最常用的结果类型,也是struts框架默认的结果类型。

(2)、例子

页面参照:/manager/index.jsp

Action参照:AdminAction

配置文件:struts.xml

在配置文件中,可以有两种写法:

下面的图说明了location的来历:

查看源码:

}

父类中

有一个属性并且提供了set方法

Redirect类型

说明

Redirect属于重定向。如果用redirect类型,则在reuqest作用域的值不能传递到前台。

redirectAction类型

(1)、说明

1、把结果类型重新定向到action

2、可以接受两种参数

a)actionName:action的名字

b)namespace:命名空间

(2)、例子

请求的路径

http://localhost:8080/project/csdn/csdn/delete.action?name=aa

Namespace=”csdn/csdn/”

<packagename=”ss”namespace=”/csdn/csdn”>

<action=”delete”>

</package>

<packagename=”test”namespace=”/csdn”>

<action=”delete”>

</package>

<packagename=”sss”namespace=””>

<action=”delete”>

</package>

Action名称的搜索顺序

1、获得请求路径的URI,例如url是:http://server/struts2/path1/path2/path3/test.action

2.首先寻找namespace/path1/path2/path3package,如果存在这个package,则在这个package中寻找名字为testaction,如果不存在这个package则转步骤3

3.寻找namespace/path1/path2package,如果存在这个package,则在这个package中寻找名字为testaction,如果不存在这个package,则转步骤4

4.寻找namespace/path1package,如果存在这个package,则在这个package中寻找名字为testaction,如果仍然不存在这个package,就去默认的namaspacepackage下面去找名字为testaction(默认的命名空间为空字符串""),如果还是找不到,页面提示找不到action

Action原型struts2

Prototype原型每次请求都会创建一个新的Action对象

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics