这个功能和Struts1中的DispatcherAction比较相像
在struts.xml文件中,
<action name="register" class="tbk.struts.action.RegisterAction" method="abc">
如果没有指定method这个属性,则请求发送过来之后,执行Action类中execute方法,一旦指定了method属性值,则执行Action 中所对应的方法,这是使用了Java的反射机制。
这样新问题又来了,不同的业务逻辑,不可能共同使用一个validate方法,所以Struts2规定,如果处理业务方法名为abc,则输入校验的方法名为validateAbc().
如果一个Action类中有validate方法,是一定要去执行的。不管又没有其他验证方法。也不管其他验证方法是否成功。
比如现在这个情况,执行流程是:
validateAbc()——>validate()——>abc()
本文介绍了Struts2框架中如何通过配置指定Action类中的特定方法,并利用Java反射机制来实现不同业务逻辑的处理。同时探讨了输入校验方法的调用规则及其与业务方法之间的执行顺序。

126

被折叠的 条评论
为什么被折叠?



