精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (4)
|
|
---|---|
作者 | 正文 |
发表时间:2011-05-05
Action执行的时候并不一定要执行execute方法
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <!-- Add packages here --> <constant name="struts.devMode" value="true" /> <package name="user" extends="struts-default" namespace="/user"> <action name="userAdd" class="org.hualang.actionmethod.ActionMethod" method="add"> <result>/MyJsp.jsp</result> </action> <action name="user" class="org.hualang.actionmethod.ActionMethod"> <result>/MyJsp.jsp</result> </action> </package> </struts>
这里有两个action,第一个action用的就是method方式,但是不推荐用,而第二个就是用的DMI动态方法调用
ActionMethod.java(在src目录下的org.hualang.actionmethod包中) 这里没有execute()方法,而是add方法 第一个method="add",说明调用add()方法,只要返回值是String,想调用什么就调用什么 package org.hualang.actionmethod; import com.opensymphony.xwork2.ActionSupport; public class ActionMethod extends ActionSupport { public String add() { return SUCCESS; } } <body> Action执行的时候并不一定要执行execute方法<br /> 可以在配置文件中配置Action的时候用method=来指定执行哪个方法<br/> 也可以在url地址中动态指定(动态方法调用DMI)(推荐)<br /> <a href="<%=context %>/user/userAdd">添加用户</a> <br /> <a href="<%=context %>/user/user!add">添加用户</a> <br /> 前者会产生太多的action,所以不推荐使用 </body>
其他的跟以前的基本一样
运行结果如下: 点击第一个链接
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-05-05
Dynamic Method Invoke的缩写?
|
|
返回顶楼 | |
发表时间:2011-05-09
那对于多个页面result如果配置呢?
|
|
返回顶楼 | |
发表时间:2011-05-09
bluemare 写道 那对于多个页面result如果配置呢?
判断嘛.. |
|
返回顶楼 | |
发表时间:2011-05-10
你说的action大多是什么情况,配置文件的action配置吗?写action代码并没有减少。
如果是这样,产生多个action未尝不可,项目大了,全用aaa!method的方式,不好维护,难以形成规范性,以method配置方式一目了然,而且你在请求路径上加上方法名,无疑是把代码级别的东西暴露了,不太适合。 |
|
返回顶楼 | |
发表时间:2011-05-10
使用 org.apache.struts2.convention.annotation 比较方便
|
|
返回顶楼 | |
发表时间:2011-05-10
最后修改:2011-05-10
这个写法只是减少了 action 的配置代码 并不能减少 action 的数量, 因为每次请求都会new action 如果这样写的话。 匹配方法的时候可能还会更加消耗性能。 因为每次都会通过反射去寻找方法,而且还不知道方法是否存在。
|
|
返回顶楼 | |
发表时间:2011-05-10
使用不当会造成严重安全问题,强烈建议关闭掉
|
|
返回顶楼 | |
发表时间:2011-05-10
KimShen 写道 使用不当会造成严重安全问题,强烈建议关闭掉
同意 性能问题 安全问题 |
|
返回顶楼 | |
发表时间:2011-05-12
用struts2插件吧 零配置
|
|
返回顶楼 | |