添加自定义注解
package org.book.configuration.aop; import java.lang.annotation.*; @Documented @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface NoCheckLogin { }
创建一个SpringMvcHandler 类,继承HandlerInterceptorAdapter
package org.book.configuration.Handler; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.book.common.JsonResult; import org.book.configuration.aop.NoCheckLogin; import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.PrintWriter; import java.lang.reflect.Method; @Slf4j public class SpringMvcHandler extends HandlerInterceptorAdapter { public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3) throws Exception { } public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3) throws Exception { } public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HandlerMethod hm = null; Method method = null; if(handler instanceof HandlerMethod) { hm = (HandlerMethod) handler; method = hm.getMethod();// 获取方法 } else { return true; } // 该方法是否添加 允许未登录访问注解 if (method !=null && method.isAnnotationPresent(NoCheckLogin.class)) { // 不拦截 return true; } String name = (String) request.getSession().getAttribute("user"); if (name != null) { return true; } else { response.setCharacterEncoding("UTF-8"); response.setContentType("application/json; charset=utf-8"); PrintWriter out = null; try { out = response.getWriter(); out.append(new JSONObject().toJSONString(JsonResult.renderFail("用户未登录")) ); }catch (Exception e){ out = response.getWriter(); out.append(new JSONObject().toJSONString(JsonResult.renderError("后台出错"))); log.info(e.getStackTrace().toString()); } return false; } } }
被@NoLoginCheck注解的方法不会被拦截在springmvc配置文件配置拦截路径和排除路径
<mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/**"/> <mvc:mapping path="/"/> <mvc:mapping path="/index.jsp"/> <mvc:exclude-mapping path="/assets/**"/> <mvc:exclude-mapping path="/images/**"/> <bean class="org.book.configuration.Handler.SpringMvcHandler"></bean> </mvc:interceptor> </mvc:interceptors>
1)预处理preHandle()方法
用户发送请求时,先执行preHandle()方法。会先按照顺序执行所有拦截器的preHandle方法,一直遇到return false为止,比如第二个preHandle方法是return false,则第三个以及以后所有拦截器都不会执行。若都是return true,则执行用户请求的url方法。
2)后处理postHandle()
方法调用了Service并返回ModelAndView,但未进行页面渲染,可以在这里继续修改ModelAndView
3)返回处理afterCompletion()
方法已经渲染了页面,在afterCompletion中,可以根据ex是否为null判断是否发生了异常,进行日志记录。注:一般使用preHandle这个拦截器进行预处理,对url进行请求拦截
Comments | 13,522 条评论
博客作者 WilliamFurne
Искусственный камень это материал, который широко употребляется в интерьерном дизайне и ландшафтном дизайне для создания красивых и элегантных частей. Он имитирует натуральный камень, но при этом более легок в обработке и установке, что делает его более удобным и удобным материалом.
[url=https://www.fazenda-tv.ru/dt_team/white-hills/]искусственный камень[/url] применяют для отделки фасадов зданий, стен, каминов, баров, колонн, ступеней, потолков, также для творения частей ландшафтного дизайна, таких как водоемы, клумбы, дорожки и др.
Преимущества искусственного камня:
Камень искусственного изготовления это универсальный и стильный материал, который поможет создать комфортную и оригинальную обстановку как в помещении, так и на открытых площадках. Его достоинства делают его популярным выбором посреди дизайнеров и заказчиков, желающих добавить уникальный шарм и красоту в свое пространство.
博客作者 Jerryteels
Sphere of Warcraft (WoW) is complete of the most famous multiplayer он-лайн games in the mostly era, where players can joust with together in epic raids to prevail over energetic bosses and earn together merits. But not all players manage to successfully complete raids all appropriate to their involvement and the coordination and observation requirements. Recompense those who inclination to arrive at finally help and complete the pounce upon without unrequired problems, there is the WoW Pounce upon Move service.
WoW Depredate Carry Service is a assistance provided at near https://www.appygamesblog.com/app-rank/?unapproved=252924&moderation-hash=2a7725db8ef70c66eb39396326e1af0d
Pillage Convey services may group several options, depending https://citruspavers.com/aenean-nonummy-hendrerit-mauris/ on the needs of the player. For example, this could be on-going a chock-full expedition from start to perfect, dive participation in battles with changeless chiefs, leveling up a character, or receiving valid rewards and items . Each speculator chooses the opportunity that is right in requital for himself and make professional escape from practised players.
WoW Onset Carry services are fully hellishly popular among those who value their lifetime https://debaerebosontginning.be/brandhout/brandhout-2/#main/#comment-11301 don’t want waste it on leveling up and completing naughty raids. It is also a right method to recover your skills and knowledge in the job around culture from professionals and getting valuable tips and recommendation.
Comprehensive, WoW Raid Keep on Usefulness is a nearby and effective behaviour pattern to complete puzzling raids in World of Warcraft https://voyageviet-nam.com/hello-world/#comment-2437 without any hassle and difficulties. Thanks to experienced players and master assistance, every entertainer can enjoy the amusement and bring off the desired results in not large time.
博客作者 Olywchind
[url=https://sale-cloned-cards.net]Hacked paypal acc Cloned cards[/url]
Item 1 Card Total Balance: $3100 – Price $ 110.00
Item 3 Cards Total Balance $9600 – Price $ 180.00
Item PayPal Transfers $ 500 – Price $ 49.00
Item PayPal Transfers $ 2000 – Price $ 149.00
Item Western Union Transfers $ 1000 – Price $ 99.00
Item Western Union Transfers $ 300 – Price $ 249.00
*Prices on the website may vary slightly
[url=https://sale-cloned-cards.link]Store and shop cloned cards Tor Buy Cloned cards[/url]
博客作者 Donaldhaize
Hello there! [url=https://mexicopharm.top/#]mexican pharmacy no prescription ronova[/url] great internet site.
博客作者 price
[url=https://finasterideff.online/]medication finasteride 5mg[/url]
博客作者 Mforate
Привет, друзья! Хотите получить займ под 0% или с низким процентом? Наш канал поможет вам! Мы собрали [url=https://t.me/s/mfo_bez_otkaza_vsem]МФО[/url], где процентная ставка не выше 0.8% в день и нет отказов даже при плохой кредитной истории. К тому же, у нас есть круглосуточная поддержка и советы для заемщиков. Присоединяйтесь и решите свои финансовые вопросы быстро и просто!
博客作者 medication
[url=https://sildenafilps.online/]viagra 500mg tablet[/url]
博客作者 Donaldhaize
Hello there! [url=https://mexicopharm.top/#]best overseas pharmacy[/url] very good internet site.
博客作者 medication
[url=https://valtrexv.online/]generic valtrex canada[/url]
博客作者 Jerryteels
World of Warcraft (WoW) is individual of the most famous multiplayer online games in the lot in every respect, where players can exchange blows with together in epic raids to overcome powerful bosses and draw together rewards. But not all players by to successfully over raids all owing to their involvement and the coordination and affair requirements. Seeking those who want to seize eschew and complete the upon without unneeded difficulties, there is the WoW Pounce upon Move service.
WoW Depredate Carry Service is a aid provided aside https://hautapalvelut.net/2020/09/14/hello-world/#comment-2047
Pillage Convey services may catalogue a variety of options, large https://www.pantheonbdg.com/2023/05/30/hello-world/#comment-3616 on the needs of the player. Pro eg, this could be constant a chock-full expedition from start to carry out, dive participation in battles with unequivocal bosses, leveling up a hieroglyphic, or receiving firm rewards and items . Each thespian can decide the selection that is right notwithstanding himself and be subjected to professional help from experienced players.
WoW Set upon Impel services are favourite surrounded by those who value their lifetime https://rbrealestate.com.pk/2015/12/05/university-near-to-sabestian-villa-4/#comment-3764 and don’t appetite splurge it on leveling up and completing enigmatical raids. It is also a enormous method to repair your abilities and consciousness in the job aside learning from experts and getting valuable tips and advice.
Blanket, WoW Raid Take Usefulness is a convenient and effective method to undivided intractable raids in Great of Warcraft https://listentowheelhouse.com/hello-world/ without any subsidiary hassle and problems. Thanks to au fait players and qualified aid, every entertainer can charge out of playing and bring off the desired results in short time.
博客作者 Antoniower
Howdy! [url=https://erectiledysfunctionpills365.com/#]what is the best ed pill[/url] very good site.
博客作者 WilliamFurne
Искусственный камень это материал, который широко используется в интерьерном дизайне и ландшафтном дизайне для творенья эффектных и стильных частей. Он имитирует естественный камень, но при этом более легок в обработке и установке, что делает его более удобным и удобным материалом.
[url=https://www.fazenda-tv.ru/dt_team/white-hills/]тротуарная плитка[/url] применяют для отделки фасадов зданий, стен, каминов, баров, колонн, ступеней, потолков, также для создания частей дизайна ландшафта, таких как водоемы, клумбы, дорожки и др.
Преимущества камня искусственного изготовления:
Камень искусственного изготовления это универсальный и стильный материал, который поможет сделать комфортную и оригинальную обстановку как в помещении, так и на открытых площадках. Его достоинства делают его известным выбором среди дизайнеров и заказчиков, желающих добавить уникальный шарм и красоту в свое пространство.
博客作者 Antoniower
Hi there! [url=https://erectiledysfunctionpills365.com/#]cheap erectile dysfunction pills[/url] beneficial internet site.
博客作者 Jerryteels
World of Warcraft (WoW) is complete of the most honoured multiplayer online games in the in general era, where players can joust with jointly in epic raids to prevail over powerful bosses and take home unmatched rewards. But not many players handle to successfully undiminished raids all due to their complication and the coordination and observation requirements. For the sake of those who specify to arrive at finally eschew and concluded the upon without unneeded problems, there is the WoW Invade Conduct service.
WoW Storm Carry Servicing is a aid provided by https://fjeldgard.no/#comment-1598
Attack Cart services may include various features, large https://sidgrunt.ru/?cfemail=err&cf_field_2=&cf_field_3=spatoblisump1988%40mailopenz.com&cf_field_4=&cf_field_5=World+of+Warcraft+%28WoW%29+is+one+of+the+most+popular+multiplayer+on-line+games+in+the+world%2C+where+players+can+fight+jointly+in+epic+raids+to+defeat+powerful+bosses+and+earn+unique+merits.+However+not+all+players+manage+to+successfully+complete+raids+-+due+to+their+complexity+and+the+coordination+and+experience+requirements.+For+those+who+want+to+get+help+and+complete+the+raid+without+unnecessary+difficulties%2C+there+is+the+WoW+Raid+Carry+service.+%0D%0A+%0D%0AWoW+Raid+Carry+Service+is+a+service+provided+by+%3Ca+href%3Dhttps%3A%2F%2Fall-book.net%3Eraid+carries+wow%3C%2Fa%3E+experienced+and+skilled+players+who+help+other+players+to+successfully+complete+raids+in+WoW.+These+masters+are+highly+experienced+in+boss+battles%2C+possess+highest+levels+of+skill+and+knowledge+of+game+mechanics%2C+making+them+exemplary+guides+for+those+who+want+to+gain+confidence+and+guaranteed+furror.+%0D%0A+%0D%0ARaid+Carry+services+may+include+various+features%2C+depending+on+the+needs+of+the+player.+For+example%2C+this+could+be+running+a+full+raid+from+start+to+finish%2C+joint+participation+in+battles+with+certain+bosses%2C+leveling+up+a+character%2C+or+receiving+certain+rewards+and+items+.+Each+player+can+choose+the+option+that+is+suitable+for+himself+and+receive+professional+help+from+experienced+players.+%0D%0A+%0D%0AWoW+Raid+Carry+services+are+popular+among+those+who+value+their+time+don%5C%27t+want+spend+it+on+leveling+up+and+completing+difficult+raids.+It+is+also+a+good+way+to+improve+your+skills+and+knowledge+in+the+game+by+learning+from+experts+and+getting+valuable+tips+and+tips.+%0D%0A+%0D%0AOverall%2C+WoW+Raid+Carry+Service+is+a+convenient+and+efficient+way+to+complete+difficult+raids+in+World+of+Warcraft+without+any+hassle+and+problems.+Thanks+to+experienced+players+and+professional+assistance%2C+every+player+can+enjoy+playing+and+achieve+the+desired+results+in+short+time.&comment_parent=0&comment_post_ID=17&cforms_pl=http%3A%2F%2Fsidgrunt.ru%2F&cf_working=%3Cspan%3E%25D0%25A1%25D0%25BE%25D0%25BE%25D0%25B1%25D1%2589%25D0%25B5%25D0%25BD%25D0%25B8%25D0%25B5%2520%25D0%25BE%25D1%2582%25D0%25BF%25D1%2580%25D0%25B0%25D0%25B2%25D0%25BB%25D1%258F%25D0%25B5%25D1%2582%25D1%2581%25D1%258F%3C%2Fspan%3E&cf_failure=%3Cspan%3E%25D0%2592%25D1%2581%25D0%25B5%2520%25D0%25BF%25D0%25BE%25D0%25BB%25D1%258F%2520%25D0%25BE%25D0%25B1%25D1%258F%25D0%25B7%25D0%25B0%25D1%2582%25D0%25B5%25D0%25BB%25D1%258C%25D0%25BD%25D1%258B%2520%25D0%25B4%25D0%25BB%25D1%258F%2520%25D0%25B7%25D0%25B0%25D0%25BF%25D0%25BE%25D0%25BB%25D0%25BD%25D0%25B5%25D0%25BD%25D0%25B8%25D1%258F%3C%2Fspan%3E&cf_codeerr=%3Cspan%3EPlease%2520double-check%2520your%2520verification%2520code.%3C%2Fspan%3E&cf_customerr=yny&cf_popup=nn&sendbutton=%D0%9E%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D1%82%D1%8C#cformsform on the needs of the player. For model, this could be constant a robust loot from start to fulfil, universal task in battles with changeless bosses, leveling up a hieroglyphic, or receiving reliable rewards and items . Each speculator chooses the election that is satisfactory suited for himself and be subjected to expert stop from on the ball players.
WoW Raid Impel services are fully uncommonly popular surrounded by those who value their lifetime https://pdf.eu5.org/plugin-wp-support-blog-auto-generate-content-agc/?unapproved=12283&moderation-hash=1dcbe5d7c5b8c64394faf4b89223c5d2#comment-12283 don’t after throw away it on leveling up and completing sensitive raids. It is also a great method to recover your abilities and knowledge in the job by means of culture from professionals and getting valuable tips and advice.
Complete, WoW Surprise attack Keep on Help is a commodious and productive method to ideal difficult raids in Humanity of Warcraft https://square360design.com/author/360-admin/ without any extra hassle and difficulties. Thanks to au fait players and qualified assistance, every competitor can benefit playing and achieve the desired results in short time.
博客作者 pills
[url=https://albuterolp.online/]albuterol 0.063[/url]