添加自定义注解
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,270 条评论
博客作者 CarmineLiz
Patient medication resource. Pill essentials explained.
[url=https://proscarxl.top/#]buy generic proscar[/url]
Medication leaflet provided. Medication reactions explained.
博客作者 Bumecaitroks
Boomerang Casino is an exciting online platform created for those who pursue thrilling gaming experiences in a protected and intuitive interface. The platform provides a wide variety of titles, including traditional slots, real-time dealer games, and various table games. Serving an worldwide audience, [url=https://boomerangcasinode.com/]casino boomerang[/url] offers multi-language support and a wide range of transaction options, featuring credit cards, electronic wallets, and crypto payments. This flexibility renders it available to players from over 130 countries, making sure all players can benefit from the features and offerings of this contemporary casino.
One of the standout features of boomerang casino is its lucrative incentive system, which includes new player bonuses, no-cost spins, and rebate offers. These promotions are designed to boost the gameplay and give users more opportunities to succeed. Additionally, the casino is committed to ensuring fairness and security, employing sophisticated security technologies to protect personal data and payments. This focus to protection and fairness has rendered Boomerang Casino a reliable name in the online gaming community.
Another positive element of [url=https://boomerangcasinode.com/]boomerang slot[/url] is its dedication to responsible gaming. The platform offers users with resources and guidance to control their gaming habits responsibly, promoting a sustainable practice between enjoyment and safe play. The assistance team is also on hand to support with any issues or queries, delivering quick and expert service to enhance the overall player experience.
In conclusion, Boomerang Casino is a high-quality digital casino that delivers a comprehensive and satisfying gaming experience. With its vast selection of options, robust security measures, and gambler-oriented offers, it stands out as a leading selection for digital casino players. Whether you’re a seasoned gambler or new to the world of online casinos, boomerangcasinode.com has a lot to provide all players. Discover the universe of Boomerang Casino today and elevate your gaming to the next level.
博客作者 Winlinega
Чтобы получить максимум от ставок, обязательно воспользуйтесь [url=https://vinlajn-promokod.ru/]промокод Винлайн[/url], который доступен на нашем сайте и даёт отличные бонусы.
博客作者 Gregorypycle
Ремонт автомобиля это главный процесс, который требует серьезного подхода. Качественное сервис не только лишь prolong будет нужно, но и обеспечит безопасность на дорогах. Чтобы не сделать ошибки в выборе, следуйте нескольким рекомендациям.
Перед тем как обратиться в автосервис, обязательно узнайте о его репутации. Читайте отзывы в интернете, спрашивайте знакомых. Сервис с положительной репутацией это первый признак надежности.
Лучше выбирать сервис, который практикуется на ваших марках и моделях автомобилей. Это обеспечивает более точную диагностику и ремонт, потому что мастера знакомы с особенностями конкретной техники.
Проверьте, какой-никакой опыт имеют мастера автосервиса. Наличие профессионалов с сертификатами и обучением является плюсом. Квалифицированные механики помогут решить препядствия стремительно и отлично.
Современные технологии и оборудование залог качественного сервиса. Удостоверьтесь, что сервис использует современные диагностические инструменты, потому что это подсобляет точно выявлять неисправности.
Превосходный сервис обязан верно обозначать свои услуги и расценки. Выучите прайс-лист и выясните, входит ли в цена работа либо запасные части. Сравните цены в разных сервисах, но помните, что самый дешевенький вариант порой лучший.
Наличие гарантии на выполненные работы и запчасти важный показатель. Неплохой сервис всегда предоставляет клиентам гарантию, что подтверждает их уверенность в хорошем качестве исполняемых работ.
Обратите внимание на условия работы в автосервисе [url=https://samaraonline24.ru/interesnoe/view/uslugi-po-sinomontazu-i-hraneniu-sin-na-sajtah-agregatorah]продольные рычаги[/url]. Чистота, порядок, комфортная зона ожидания все это создает положительное впечатление. Комфорт и комфорт полностью могут повлиять на ваше общее восприятие сервиса.
Выбирайте автосервис, который удобно размещен условно вашего дома либо работы. Это сэкономит ваше время. Также проверьте, в какой-никакие дни и часы работает сервис, главно, чтоб он был доступен конкретно в тот момент, когда мне удобно.
Заключение
Выбор качественного автосервиса просит времени и внимания, но это инвестиция в безопасность и надежность вашего автомобиля. Следуя этим рекомендациям, у вас есть возможность найти сервис, который обеспечит высочайшее качество ремонта и обслуживания. Ваш автомобиль заслуживает лучшего из лучших!
博客作者 Allanlaulp
Read about medicines. Active ingredients listed.
[url=https://stromectol365x.top/#]buy ivermectin for humans australia[/url]
Access medication details. Patient drug facts.
博客作者 Termburg.ru
Для регистрации на процедуры и уточнения подробной информации посетите наш веб-сайт или свяжитесь с нами по телефону +7(909)167-47-46. Наш адрес: г. Москва, Гурьянова 30 (2 этаж). Разрешите наслаждение отдыха в Термбурге!
博客作者 Davidpex
The Manchester Derby is more than hardly a football prospect; it represents the battle of two opposite footballing philosophies. Manchester City Unified has traditionally relied on developing brood talent and playing expansive football, while Manchester Burgh has used chic tactics and pregnant monetary approval to establish a star-studded band https://manchestercityvsmanchesterunited.ru/.
博客作者 Jeffreykadly
learn this here now [url=https://counterwallet.info]counter wallet[/url]
博客作者 Allanlaulp
Find drug details. Recent drug developments.
[url=https://stromectol365x.top/#]cost of ivermectin pill[/url]
Patient drug information. Drug trends described.
博客作者 JamesBlift
site link [url=https://infinitowallet.pro]infinito wallet[/url]
博客作者 Winlinehg
Даже если вы уже давно на платформе, [url=https://fribet-vinlajn-promokod.ru/]промокод Винлайн для старых пользователей[/url] поможет вам получить бонусы на новые ставки.
博客作者 Termburg.ru
Термальный комплекс — это уголок отдыха в центре Москвы, организованный для тех, кто ценит качественный отдых и уход о благополучии. Находящийся по локации Гурьянова 30, комплекс предлагает широкий спектр лечебных и релаксирующих программ. На веб-странице [url=https://termburg.ru/]termburg.ru[/url] вы обнаружите подробное перечень всех доступных процедур, с участием эксклюзивные парения, массажи и спа-процедуры, организованные лучшими профессионалами.
博客作者 活婴儿色情片
KURUMpha shalpa kamil kulpa
博客作者 LS Tek
Демо игровых автоматов позволяют насладиться азартом и развлечениями казино, не тратя реальные деньги. Это идеальный способ попробовать себя, изучить игры и разработать стратегии без расхода средств.
Благодаря широкому выбору демо-слотов, каждый игрок найдет что-то по своему вкусу. От классических трехбарабанных автоматов до современных видеослотов с крутейшей графикой и увлекательными бонусными раундами.
Играть в [url=https://lucky-slots.ru/]игровые автоматы бесплатно[/url] легко и удобно. Вам не нужно создавать аккаунт или делать депозит – просто подберите подходящий игровой автомат и начните играть. Это отличная возможность попробовать разные стратегии ставок, изучить выигрышные комбинации и просто кайфануть в игру в казино.
Демо-режим также позволяет вам оценить процент отдачи игрового автомата и определить, как он подходит вам по стилю и предпочтениям. Вы можете играть сколько угодно долго, не беспокоясь о своем бюджете.
博客作者 Gregorypycle
Ремонт автомобиля это главный процесс, требующий сурового подхода. Качественное обслуживание включая prolong потребуется, да и обеспечит безопасность на дорогах. Чтобы не ошибиться в выборе, следуйте нескольким рекомендациям.
Прежде чем обратиться в автосервис, обязательно узнайте о его репутации. Читайте отзывы в интернете, спрашивайте знакомых. Сервис с положительной репутацией это 1-ый признак надежности.
Превосходнее избирать сервис, который специализируется на ваших марках и моделях автомобилей. Это обеспечивает более точную диагностику и ремонт, потому что мастера знакомы с особенностями конкретной техники.
Проверьте, какой-никакой опыт имеют мастера автосервиса. Наличие профессионалов с сертификатами и обучением является плюсом. Квалифицированные механики посодействуют решить проблемы скоро и отлично.
Современные технологии и оборудование залог качественного сервиса. Удостоверьтесь, что сервис использует современные диагностические инструменты, потому что это подсобляет точно выявлять неисправности.
Неплохой сервис должен четко обозначать свои услуги и цены. Выучите прайс-лист и выясните, заходит ли в цена работа или запасные части. Сравните цены во многих сервисах, но помните, что самый дешевенький вариант порой лучший.
Наличие гарантии на выполненные работы и запасные части важный показатель. Превосходный сервис всегда предоставляет клиентам гарантию, что подтверждает их уверенность в качестве выполняемых работ.
Обратите внимание на условия работы в автосервисе [url=https://progorod33.ru/pomoshchnik-v-remonte-i-obsluzhivanii-avtomobiley]замена датчика абс[/url]. Чистота, порядок, удобная зона ожидания все это создает положительное воспоминание. Комфорт и комфорт полностью могут повлиять на ваше общее восприятие сервиса.
Выбирайте автосервис, который удобно расположен условно вашего дома либо работы. Это сбережет ваше время. Также проверьте, в какие деньки и часы работает сервис, принципиально, чтобы он был доступен именно в тот момент, когда вам нужно.
Заключение
Выбор качественного автосервиса просит медли и внимания, но это инвестиция в безопасность и надежность вашего личного авто. Следуя этим рекомендациям, вы сможете найти сервис, который обеспечит высокое качество ремонта и обслуживания. Ваш автомобиль заслуживает самого лучшего!