在系統(tǒng)內(nèi)創(chuàng)建一個controller残炮,并配置對應的url請求路徑诵竭,其中在Controller上配置的@RequestMapping(value="/login")蜘醋,是說http://ip:port/app/login的request都轉(zhuǎn)到這個控制器上碟绑,然后在validateUser方法上配置的?@RequestMapping(value="/validate",method=RequestMethod.GET)剖膳,是告訴前置控制器,http://ip:port/app/login/validta的request請求都轉(zhuǎn)向LoginController 的validateUser()方法進行處理格侯。
自定義一個攔截器鼻听,要實現(xiàn)HandlerInterceptor接口
當一個請求按Order值從小到大,順序執(zhí)行HandlerMapping接口的實現(xiàn)類時联四,哪一個先有返回撑碴,那就可以結(jié)束了,后面的HandlerMapping就不走了朝墩,本道工序就完成了醉拓。就轉(zhuǎn)到下一道工序了。
攔截器會在什么時候執(zhí)行呢? 一個請求交給一個HandlerMapping時廉嚼,這個HandlerMapping先找有沒有處理器來處理這個請求玫镐,如何找到了,就執(zhí)行攔截器怠噪,執(zhí)行完攔截后,交給目標處理器杜跷。
如果沒有找到處理器傍念,那么這個攔截器就不會被執(zhí)行。