您的位置:首页 > 运维架构

JFinal/AOP

2015-08-19 22:30 267 查看

拦截器

Interceptor触发
AOP分为控制层AOP和业务层AOP。控制层拦截器的触发,只需发起action请求即可。业务层拦截器的触发要先使用enhance方法对目标对象进行增强,然后调用目标方法即可。

Inject拦截器

无需使用Before注解配置拦截器,在使用enhance或duang方法增强时使用参数传入的拦截器。Inject拦截器与Class级拦截器一样,将拦截目标类中的所有方法,执行次序上在Class级拦截器之前。

//设置拦截器

OrderService   service =Enhancer.enhance(OrderService.class , Interceptor.class)

Duang、Enhancer

Duang、Enhancer对目标进行增强,使其具有AOP的能力。

OrderService   service =Enhancer.enhance(OrderService.class )

OrderService   service =Duang.duang(OrderService.class)

Clear

Clear注解用于清除声明在Method以外的拦截器,即只能清除Global、Class或Inject拦截器。

(1)不带参数时清除所有拦截器

(2)带参数时只清除该参数指定的拦截器

(3)清除操作仅作用于Method之外的拦截器

Before

可以配置Class、Method级别的拦截器。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jfinal