[Spring Java JSP SSH ] Spring MVC拦截器 如何获得请求的是哪个Controller
se7en8974
2010-11-25
如题,如何在拦截器的方法中得到请求的是哪个Controller类呢,并能调用该Controller的方法。 现在我只能得到请求的Controller类名。 public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception { System.out.println("拦截开始:"); System.out.println("***"); System.out.println("asdas:"+arg2.getClass().getCanonicalName()); System.out.println(arg2.getClass().getSimpleName()); return false; } |
|
se7en8974
2010-11-25
这个世界没分真是冷漠啊
|
|
bubiaiyou
2011-01-11
为什么要用拦截器呢,能说说你的思路么
|
|
feiyu86
2011-06-25
context.getBean(“controller”)
这个可以不,没试过获取controller。。。 |
|
Rex86lxw
2011-09-20
之前段时间一直都没上,并非无分就会这般冷漠,主要看人吧
虽时隔一年看到了(你必然解决了),但还是说说我的想法... 虽不知你要做什么,看这个方法是调用控制前拦截用的,用反射吧,虽然影响点性能但是非常强大,呵呵 |
|
yusheng5273
2012-04-06
可以这样吧,你的目的无非是要在拦截之后,处理一个业务。其实spring推崇的是controller只负责控制转发,能不能把你要执行的业务逻辑写到一个service里面,然后注入到拦截器中,再调用之;
另一个办法,你可以写一个map,把所有的controller中的请求都保存起来。虽然土一点,但个人觉得比反射好多了, |
|
琼海溜
2014-04-29
下面3行代码:
HandlerMethod handlerMethod = (HandlerMethod) handler; Method method = handlerMethod.getMethod(); Object controller = handlerMethod.getBean(); |