struts.xml配置

1. package标签

package:完成有业务相关的Action(应用控制器的)管理

name:给包起的名字(反映该包中Action的功能),用来完成包和包之间的继承。默认继承struts-default,struts-default中包含了struts2的核心功能。

namespace:命名空间,默认(/),为Ation请求的路径的前缀。有效的路径构成部分。

extends:完成包之间的继承


2. Action标签

action:描述自定义的应用控制器javabean

name:Action的请求的url

class:处理请求的Action完全限定名

method:指定处理本次请求的方法。

 

3. Result标签

result:描述action执行后的结果。   

name:给action执行后需要跳转的路径的别名

type:在struts-default.xml中定义result-type定义(结果类型)

dispatcher:默认值(请求转发到jsp)

chain:请求转发,将请求转发到某个Action

redirect:重定向(只能重定向到jsp)

redirectAction:重定向,将请求重定向到某个Action

stream:获得流对象,相当于在servlet中的response.getWriter();

plainText:将jsp的源码进行响应


4.Action之间的跳转 

同一个包和不同包:

 1 <package name="user" namespace="/user" extends="struts-default">
 2 
 3     <action name="userAction" class="com.guangsoft.action.UserAction">
 4 
 5         <!-- 同一个package中不同的Action之间的跳转 -->
 6 
 7         <result name="listtoAction" type="chain">listAction</result>
 8 
 9         <result name="login">/index.jsp</result>
10 
11         <!-- 不同package中不同的Action之间的跳转 -->
12 
13         <result name="listtoAction2" type="chain">
14 
15             <!-- param的作用:用来完成给chain对应的类中的属性赋值 -->
16 
17             <param name="namespace">/list</param>
18 
19             <param name="actionName">listAction2</param>
20 
21         </result>
22 
23     </action>
24 
25     <!-- 配置ListAction -->
26 
27     <action name="listAction" class="com.guangsoft.action.ListAction">
28 
29         <result name="list">/list.jsp</result>
30 
31     </action>
32 
33 </package>
34 
35 <package name="list" namespace="/list" extends="struts-default">
36 
37     <!-- 配置ListAction -->
38 
39     <action name="listAction2" class="com.guangsoft.action.ListAction2">
40 
41         <result name="list" type="plainText">
42 
43             <param name="charSet">UTF-8</param>
44 
45             <param name="location">/list.jsp</param>
46 
47         </result>
48 
49     </action>
50 
51 </package>

 

5 Action中方法的调用

默认调用:execute

5.1,通过通配符进行调用。

在定义Action的时候,name的定义格式为url_*,加入method=“{1}”属性

客户端发送请求的时候:必须指定*号的值

5.2方法的动态调用

5.3开启方法的动态调用功能

在struts.xml文件中配置常量

1 <!-- 配置struts2的常量 :开启方法的动态调用-->
2 
3     <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>

     客户端请求的url: 

  url methodName.action

6 Action的默认配置

1 <!-- Action的默认配置 class:ActionSupport method:execute reult的name属性为:success 
2     result的type属性为:dispatcher -->
3 <package name="def" namespace="/" extends="struts-default">
4     <action name="defaultAction">
5         <result>/index.jsp</result>
6     </action>
7 </package>

 ServletActionContext.getResponse();

 同一个package的跳转

 不同package之间的Action进行跳转

原文地址:https://www.cnblogs.com/guanghe/p/6058111.html