Struts 2的DispatchAction功能例题
在Struts 2中,所有的动作(action)都默认带有DispatchAction功能。要使用此功能,我们只需创建与execute方法类似,只有名称改变的方法。
在UserAction类中包含所有和用户有关联的功能,比如:addUser(), updateUser()和deleteUser()。
我们需要指定动作(action)映射,在动作(action)类中的哪个方法被调用。在动作(action)类中,需要为单独的动作(action)映射创建相应的方法。下面是struts.xml文件中的动作(action)映射:
需要注意的是在所有的动作(action)映射中使用的是同一个动作(action)类。当请求URL是"User",那么UserAction类中的execute()方法将被调用。当请求URL是"addUser",那么UserAction类中的add()方法将被调用。使用action标签的method属性进行设置。update和delete的请求都是类似的。
在动作(action)类,为每个单独的动作(action)映射设置方法,在Struts 2中的另外一个特性动态方法调用(Dynamic Method Invocation)也可以实现。在下一篇中我们将说明如何使用它。
在index.jsp页面中,我们创建了四个不同的按钮来调用不同的方法。下面是index.jsp的内容:
下面是运行的结果。
当用户点击Add按钮,UserAction类中的addUser()方法将被执行,并将结果显示给用户。
源代码:下载
源代码 + lib: 下载