添加自定义注解
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,668 条评论
博客作者 file upload
Thank you for great article. Hello Administ .Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 KevinDub
самые выгодные игры с выводом денег бот ставки кс го как взломать игры от gameloft на деньги бонус коды для world of tanks 2017 eu онлайн игры можно заработать реальные деньги без вложений скачать игру extreme car driving simulator мод много денег скачать игру call of mini zombies 2 на андроид с бесконечными деньгами бездепозитный бонус казино 2017 июль бездепозитные бонусы зарубежных казино сайты для ставок через телефон ответы на вопросы батракам в экономической онлайн игре эпоха клонов статьи для заработка в интернете на буксах скачать игру том бесконечные деньги варианты заработка на дому в интернете скачать игры на андроид много денег дальнобойщики
https://loket.kr/free/152072 скачать программу для добавление денег в игры https://yinyue7.com/space-uid-1025126.html компенсация морального вреда при незаконном увольнении работника https://ongakutai.sakuraweb.com/cgi-bin/ddu.cgi космические стратегии и симуляторы онлайн https://www.ladislavkotik.cz/hodnoceni-koalice-prispevek-do-dubnovych-cernovin/?unapproved=21468&moderation-hash=167d168840171c1c9e7293aecc4c5b9a#comment-21468 Виртуальный хостинг сайтов https://visualchemy.gallery/forum/viewtopic.php?pid=3287726#p3287726
экономические игры 5 класс как на игру дурак сделать много денег бонусы за регистрацию на буках много денег в игре gta 5 где брать кейсы и ключи в кс го бонус коды к ворт оф танкс лучшее экономические игры как узнать код вознаграждения мегафон бонус деньги для игры sims как поставить на ставку в кс го
бонус за регистрацию в инвестициях https://www.hku88.hk/home.php?mod=space&uid=15062 регистрация ип название https://maafcakap.blogspot.de/2016/04/suka-sikit-sikit-benci-sikit-sikit.html?view=sidebar как заработать на ставках в букмекерская контора https://popcornchannel.gonna.jp/simpleoekaki/index.php картинки заработка через интернет https://www.pawsarl.es/blog/%D0%BA%D0%BE%D1%80%D0%B7%D0%B0%D0%BD.html ставки транспортного налога на 2016 год москва https://yourwellness.in/product/f1/?unapproved=11757&moderation-hash=93c834f344c741e03539a0450e7f435d#comment-11757
博客作者 Tommyjed
Hi! [url=https://finasteridexl.top/#discount-online-pharmacy]how to get finasteride without dr prescription[/url] great site.
博客作者 Victorinted
Скупка смартфонов это услуга, которая становится все более популярной среди юзеров мобильных устройств. Но в чем же смысл этой услуги и по какой причине ее выбирают все больше людей?
Первоначально, смысл скупки телефонов заключается в том, что юзеры получают за свое ветхое устройство деньги. Это в особенности животрепещуще порой, когда устройство уже устарело или сломано, и владельцу необходимо избавиться от него. Продав собственный смартфон через услугу скупки, человек может получить дополнительные средства, которые могут являться использованы на покупку нового устройства либо на что-то еще.
Второй важный [url=https://skupka-smartphones.ru]https://skupka-smartphones.ru[/url] нюанс скупки телефонов это удобство и быстрота процесса продажи. В отличие от обычных методов продажи, при сотрудничестве с компаниями, занимающимися скупкой смартфонов, юзеру не нужно тратить большое колличество времени на организацию продажи, поиск покупателя и проведение встреч для осмотра устройства. Все происходит прытко и лишь: вы связываетесь с компанией, получаете оценку стоимости своего устройства и получаете деньги за него.
Третий аспект скупки смартфонов это возможность приобрести бывшее модный устройство по более низкой цене. Многие компании, занимающиеся скупкой смартфонов, делают отличное предложение бывшие модный устройства по более доступным ценам, что может быть симпатичным для тех, кто желает сэкономить на покупке нового смартфона.
Таким образом, смысл скупки смартфонов заключается в том, что она предоставляет удобный и прибыльный способ продать свое ветхое устройство или покупать качественный смартфон по доступной цене. Эта услуга дает возможность пользователям получить средства за свои ветхие устройства, также сэкономить на покупке новых устройств.
博客作者 Shawnsom
Скупка телефонов это услуга, которая становится все более популярной среди юзеров мобильных устройств. Но в чем все-таки смысл этой услуги и по какой причине ее выбирают больше людей?
Первоначально, смысл скупки телефонов заключается в том, что юзеры могут получить за свое ветхое устройство деньги. Это необыкновенно животрепещуще порой, когда устройство уже устарело или сломано, и владельцу необходимо избавиться от него. Продав меня называют Господом телефон через услугу скупки, человек может получить дополнительные средства, которые могут являться применены на покупку нового устройства либо на что-то еще.
Второй важный нюанс [url=https://smartphones-skupka.ru]https://smartphones-skupka.ru[/url] скупки смартфонов это удобство и быстрота процесса продажи. В отличие от обычных методов реализации, при сотрудничестве с компаниями, занимающимися скупкой телефонов, юзеру не нужно тратить большое колличество времени на организацию продажи, поиск покупателя и проведение встреч для осмотра устройства. Все происходит живо и лишь: вы связываетесь с компанией, получаете оценку стоимости собственного устройства и получаете деньги за него.
3-ий нюанс скупки телефонов это возможность приобрести бывшее модный устройство по более низкой цене. Многие компании, занимающиеся скупкой телефонов, предлагают бывшие модный устройства по более доступным стоимостям, что может быть симпатичным для тех, кто хочет сэкономить на покупке нового смартфона.
Таким образом, смысл скупки смартфонов содержится в том, что она предоставляет удобный и выгодный метод продать свое ветхое устройство либо покупать качественный смартфон по доступной стоимости. Эта услуга дает возможность пользователям получить средства за свои старенькые устройства, а также сэкономить на покупке новых устройств.
博客作者 hacklink panel
Thank you for great article. Hello Administ .Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 Sahabet
Thank you for great information. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 Sahabet
Great post thank you. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 Casino Slot Oyunları
Great post thank you. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 KevinDub
стабильный заработок в интернете без вложений для новичков смотреть онлайн бесплатно мультфильм кенгуру джекпот скачать игру бой с тенью 2 мод на бесконечные деньги заработок на лайках без вложений отзывы код разблокировки бонуса в сталкере бесплатно играть в игры онлайн экономические система для заработка в интернете заработок в интернете мошенничеством игровой порно сайт бонус коды к 23 февраля 2015 форум бонус коды на world of tanks бонус без депозита казино русское название для денег для игры скачать игру на андроид турбо улитка с бесконечными деньгами скачать игру симулятор русского гаишника мод много денег
https://chestertoncr.com/90-zeptejte-se-nas.html?firma=reminiscentflui&email=ondowwacas1972@mailopenz.com&telefon=reminiscentflui&poznamka=%3Ca+href%3D%22https%3A%2F%2Fwww.nikon-micro.ru%2Fcatalog%2Fprogrammnoe-obespechenie%2F%22%3E%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%BE%D0%B5+%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D0%B5%D0%BD%D0%B8%D0%B5+%D0%B4%D0%BB%D1%8F+%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%BA%D0%BE%D0%BF%D0%B0%3C%2Fa%3E#poptavka как в игре русская рыбалка увеличить деньги https://trikiro.s55.xrea.com/bbs/mkbbs.cgi официальная ликвидация ооо россия https://144.217.84.85/forum/viewtopic.php?f=17&t=91006&sid=d52b369654c2d1051fa6a705c8fc5be3 онлайн игры рпг список лучших https://aki3.sakura.ne.jp/4koma/manga.cgi Хостинг серверов https://kemavto.kuzbass.net/index.php?subaction=userinfo&user=accuratecategor
хочет стать миллионером онлайн игра деньги скачать игру road smash с бесконечными деньгами сайт игры в нарды на реальные деньги онлайн заработок в интернете онлайн ставки биткоин игры с выводом денег без вложений видео как вызывать джекпота заработок в интернете татьяна воробьева афродита отзывы видео майнкрафт канал шкипера golden bird игра с выводом денег вход в аккаунт скачать бесплатно игру мой говорящий том мод много денег на андроид
свой игровой сайт https://gather-girls.com/home.php?mod=space&uid=122726 ип пенсионный фонд регистрация https://www.kubikprint.ru/2017/03/blog-post_23.html американский прогноз спорта https://35.247.101.134/index.php?title=Скупка смартфонов заработок в интернете мега https://momm.me/blog/novaya-demisezonnaya-kollektsiya-premont-2017-goda/#comment_0 блог букмекерские ставки https://140.143.56.33/home.php?mod=space&username=efazari&do=profile
博客作者 Zbahis Official
Thank you for content. Area rugs and online home decor store. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 z Bahis
I really love to read such an excellent article. Helpful article. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 Zbahis Telegrama Özel Etkinlik Bonusu
Hello! I could have sworn I’ve been to this blog before but after browsing through some of the post I realized it’s new to me.Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 Xslot Bonusu
Thank you for great content. Hello Administ. Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 500 TL Deneme Bonusu
Thank you for great information. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut