struts2 有没有在执行ACTION方法之前自动执行预先的方法

eimhee 2009-11-16 05:23:33
struts2 有没有在执行ACTION方法之前自动执行预先的方法
比如在执行execute , input方法之前调用写好的方法
有点像struts 1.2中的reset方法
...全文
494 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
panhaichun 2009-11-17
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 herotang101 的回复:]
不用写拦截器啊,我struts2本来就有这个机制
只要你的ACTION实现Preparable接口
那你自己新建一个函数
prepareExecute()
函数名一定要这样命名
那当你调用execute()的时候就会先调用prepareExecute()了
[/Quote]

是prepare方法

struts先调用所有的set方法,然后再执行prepare方法,然后又一次调用所有set方法,最后再execute。

知道怎么做了吧..
villagehead 2009-11-17
  • 打赏
  • 举报
回复
aop with using spring

good luck
herotang101 2009-11-17
  • 打赏
  • 举报
回复
不用写拦截器啊,我struts2本来就有这个机制
只要你的ACTION实现Preparable接口
那你自己新建一个函数
prepareExecute()
函数名一定要这样命名
那当你调用execute()的时候就会先调用prepareExecute()了
wei_june 2009-11-17
  • 打赏
  • 举报
回复
可以在;execute中显试调用你的方法
redlotus_lyn 2009-11-17
  • 打赏
  • 举报
回复
写一个拦截器。
ml_dark 2009-11-16
  • 打赏
  • 举报
回复
<package name="default" namespace="/test" .....>
<action name="*/*" method="{2}" class="test.action.{1}Action">
<result name="*" type="direct"></result>
</package>

url: /test/Admin/login.do表示访问test.action.AdminAction里面的login方法
sangshusen_1988 2009-11-16
  • 打赏
  • 举报
回复
<action name="action_*" class="net.csdn.PersonAction" method="{1}">
<result name="list">/WEB-INF/page/list.jsp</result>
<result name="add">/WEB-INF/page/addperson.jsp</result>
</action>
可以通过通配符映射路径,action_create 访问的就是create方法,你说的这种可以通过过滤器或者拦截器来实现,就比较费劲啦
zhouxinwei 2009-11-16
  • 打赏
  • 举报
回复
楼上的回答,都是错的~
具体应该这样url用 user.action!add
这样就可以调用UserAction里的add方法了
eimhee 2009-11-16
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 zl3450341 的回复:]
struts2有没有根据隐藏值执行某个方法
?

action再写个方法啊
[/Quote]

<input hidden="create" name="action">

如何根据这个隐藏值, 执行action中的create方法
老张-AI 2009-11-16
  • 打赏
  • 举报
回复
struts2有没有根据隐藏值执行某个方法
?

action再写个方法啊
zcl198715 2009-11-16
  • 打赏
  • 举报
回复
写个拦截器就可以了
wayfen 2009-11-16
  • 打赏
  • 举报
回复
可以写一个过滤器,在过滤器的初始化的方法里调用你想要的方法。
panhaichun 2009-11-16
  • 打赏
  • 举报
回复
先调用setter,再执行prepare(),然后再setter,
只要你的隐藏变量有set方法,
你可以在prepare方法里面做判断再执行啊
烟雨鹏城 2009-11-16
  • 打赏
  • 举报
回复
默认都是执行execute,这里你可以写个子类,根据你传递的参数,调用子类的相关方法(java的反射实现)
eimhee 2009-11-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yxxcrtd 的回复:]
Struts 2 中注明的拦截器 !!!
[/Quote]问题解决用Preparable拦截器 , 但还有一个问题, struts2有没有根据隐藏值执行某个方法
「已注销」 2009-11-16
  • 打赏
  • 举报
回复
Struts 2 中注明的拦截器 !!!

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧