EJB 3.0 跪求高手赐教
EJB 3.0 拦截器截获的方法 可以重载和重写么?
public Object log(InvocationContext ctx)throws Exception{
if(ctx.getMethod().getName().equals("GetRowSet")){
System.out.println("我拿到这个方法了");
}
name=ctx.getMethod().getName();
System.out.println(ctx.getParameters()[0]+"此处是获得GetRowSet方法的第一个参数");
System.out.println(ctx.setParameters(int sql,Object[] params)+"此处是设置参数");
Object o = ctx.proceed();
ctx.proceed();
System.out.println("ctx.getMethod()这个方法无法执行必须在ctx.proceed()中间");
if(ctx.getParameters()[0].equals("就不说")){
throw new Exception("哈哈出错了吧");
}
return o;
}
------解决方案--------------------不可以的。你可以篡改传入参数的值,但方法还是原来的方法。
------解决方案--------------------估计用这个人不多。
之前一个项目也就用拦截器来记录系统中一些关键的用户动作。
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------都可以,但是重载后可能没有地方调用。除非你自己调用
------解决方案--------------------不可以的。你可以篡改传入参数的值,但方法还是原来的方法。
------解决方案--------------------