JFinal在线手册

浏览12059
更新时间2022-04-11

Before 注解用来对拦截器进行配置,该注解可配置 Class、Method 级别的拦截器,以下是 代码示例:


1475634939249992.png

如上代码所示,Before 可以将拦截器配置为 Class 级别与 Method 级别,前者将拦截本类 中所有方法,后者仅拦截本方法。此外 Before 可以同时配置多个拦截器,只需用在大括号内 用逗号将多个拦截器进行分隔即可。

除了 Class 与 Method 级别的拦截器以外,JFinal 还支持全局拦截器以及 Inject 拦截器(Inject

拦截将在后面介绍),全局拦截器分为控制层全局拦截器与业务层全局拦截器,前者拦截控制 层所有 Action 方法,后者拦截业务层所有方法。

全局拦截器需要在 YourJFinalConfig 进行配置,以下是配置示例:


public class AppConfig extends JFinalConfig {
	public void configInterceptor(Interceptors me) {
	// 添加控制层全局拦截器
	me.addGlobalActionInterceptor(new GlobalActionInterceptor());
 
	// 添加业务层全局拦截器
	me.addGlobalServiceInterceptor(new GlobalServiceInterceptor());
 
	// 为兼容老版本保留的方法,功能与addGlobalActionInterceptor完全一样
	me.add(new GlobalActionInterceptor());
	}
}


当某个 Method 被多个级别的拦截器所拦截,拦截器各级别执行的次序依次为:Global、 Inject、Class、Method,如果同级中有多个拦截器,那么同级中的执行次序是:配置在前面的 先执行。

相关视频

更多

免费

php8,我来也
初级php8,我来也

321850次学习

收藏

免费

Thinkphp6.0正式版视频教程
中级Thinkphp6.0正式版视频教程

382472次学习

收藏

免费

细说PHP第一季
中级细说PHP第一季

282871次学习

收藏

免费

简单聊聊PHP创业那点事
初级简单聊聊PHP创业那点事

13418次学习

收藏
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号