1、execute()方法是Action实现类的默认方法,只配备execute()方法的Action类只能处理某一特定的请求。而在实际的开发过程中,我们需要将某一系列的请求处理封装到同一Action实现类中以简化开发与维护,这需要在Action实现类中放置多个与execute()方法具有相同签名的处理方法。
2、针对不同的请求均放置一个相对应的处理方法,且其相应的验证方法命名为validateXXX()。
3、Action实力本身负责保存请求参数与处理结果,且最终返回的不是真正的物理视图资源,而是一个命名视图资源(如SUCCESS、NONE、ERROR、INPUT、LOGIN及自定义的字符串),命名视图与真正的物理视图的对应关系是在配置文件struts.xml中配置的。开发完的所有Action实现类均必须在struts-xml中配置后才能被Struts2框架调用。
4、为了简化动态方法调用的Action配置,通常建议视图资源命名、Action处理方法命名及Action名称的命名均遵循一定的规则,这样就可以使用通配符与动态值来配置Action实现类。
<package name="struts2" extends="struts-default"> <!--使用通配符与动态值来配置AdminAction类,实现动态方法调用--> <action name="*" class="com.test.action.AdminAction" method="{1}"> <!--配置命名视图与物理视图的对应关系--> <result name="success">/admin/{1}.jsp</result> <result name="input">/admin/{1}.jsp</result> <result name="index">/admin/index.jsp</result> </action> </package>