想法是这样的,首先 有个 base 类继承controller,然后base里面有个init方法,然后在拦截器里面写入以下代码来自动执行每个子类里面的init方法
... Controller c = inv.getController(); Method method = c.getClass().getDeclaredMethod("init"); method.invoke(c); ...
结果执行的时候提示子类里面不存在 init 方法
而我改成这样,又能运行成功:
... Base c = (Base)inv.getController(); c.init(); ...
有点不太理解,我使用第一种方法为何不行呢?
项目:JFinal