天天看点

SSH学习之Struts2中的Action回忆Action的介绍Action的编写方式Action中的方法注意多余的话

回忆

在上一篇博客SSH学习之Struts2的配置文件中写明了Struts2的配置文件,这一篇来写写Struts2中的核心Action。

Action的介绍

官方介绍:Action类是用户请求和业务逻辑之间的桥梁,每个Action充当客户的一项业务代理。

在RequestProcessor类预处理请求时,在创建了Action的实例后,就调用自身的processActionPerform()方法,

该方法再调用Action类的execute()。

     然而,在我看来Action就是Java类,用来处理前台数据和调用业务层代码的中间类。

Action的编写方式

  • 普通Java类,不继承也不实现任何接口或类,方法名也是自己编写。
  • 实现接口Action。
  • 继承ActionSupport类,其实这个类最终也是实现了Action接口。这也是开发工作中常用的方式。

Action中的方法

Action在Struts2的框架中要求只写String返回值的方法,但是写其他的方法并不会错误。      Action中的执行的方法的返回值和配置文件中的result标签挂钩。

注意

假设有一个大型项目,需要访问很多的action,那么就必须在struts.xml配置文件里写很多的action标签,配置文件内容就会变得特别的多,难以阅读。所以Struts2框架也提供了解决的方法,那就是使用通配符*和{1}。用法如下:

<action name="user_*" class="action.TestAction" method="{1}">
	<result name="success">/success.jsp</result>
</action>
           

说明:

  • 星号,是通配符的形式,以上面为例,他表现匹配所有形式为user_XXX的访问路径,比如user_login、user_register等等。
  • {1},表示的是第一个星号的值,也就是可以理解为login、register。
  • 当然在action中也要有与其相对应的方法,比如login方法、register方法。

多余的话

这是我的理解,请多多见谅

SSH学习之Struts2中的Action回忆Action的介绍Action的编写方式Action中的方法注意多余的话