在HttpServlet的每个方法调用之前运行方法

时间:2016-05-05 00:05:42

标签: java reflection aop

我正在编写一个抽象的Tomcat servlet Foo,我希望这样做,以便在FooImplement中调用方法时,它会运行Foo的方法。

因此,在FooImplement中的每个方法调用之前,我想运行checkAccess中定义的Foo。如果用户没有访问权限,则不会调用该方法,并且会将请求重定向到其他位置。如果用户具有访问权限,则调用该方法。

我认为我可以使用代理here,但问题是我无法传递tomcat代理实例,因为这将涉及一个不可能的构造函数

public Foo() {
    return (Foo) Proxy.newProxyInstance(
    this.getClass().getClassLoader(),
    new Class[]{this.getClass()},
    new FooInvocationHandler(this);
}

有谁知道我可以做到这一点的方式?

0 个答案:

没有答案