W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
WebMVC模塊基于YMPv2.0的新特性,原生支持AOP方法攔截,通過以下注解進行配置:
@Before:用于設置一個類或方法的前置攔截器,聲明在類上的前置攔截器將被應用到該類所有方法上;
@After:用于設置一個類或方的后置攔截器,聲明在類上的后置攔截器將被應用到該類所有方法上;
@Clean:用于清理類上全部或指定的攔截器,被清理的攔截器將不會被執(zhí)行;
@ContextParam:用于設置上下文參數(shù),主要用于向攔截器傳遞參數(shù)配置;
@Ignored:聲明一個方法將忽略一切攔截器配置;
說明: 聲明@Ignored注解的方法、非公有方法和Object類方法及Object類重載方法將不被攔截器處理。
示例代碼:
// 創(chuàng)建自定義攔截器 public class UserSessionChecker implements IInterceptor { public Object intercept(InterceptContext context) throws Exception { // 判斷當前攔截器執(zhí)行方向 if (context.getDirection().equals(Direction.BEFORE) && WebContext.getRequest().getSession(false) == null) { return View.redirectView("/user/login"); } return null; } } @Controller @RequestMapping("/user") @Before(UserSessionChecker.class) public class Controller { @RequestMapping("/center") public IView userCenter() throws Exception { // ...... return View.jspView("/user/center"); } @RequestMapping("/login") @Clean public IView userLogin() throws Exception { return View.jspView("/user/login"); } }
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: