添加自定义注解
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,328 条评论
博客作者 DanielEpire
В современном мире веб-магазины стали главным местом покупки разных гаджетов. Но с таким великим количеством доступных вариантов, как выбрать превосходнейший интернет-магазин для собственных нужд? В этой статье будут рассмотрены ключевые нюансы, на которые стоит обратить внимание при выборе веб-магазина гаджетов.
Прежде чем делать покупку, важно изучить репутацию веб-магазина. Отыскиваете отзывы пользователей на независимых платформах и форумах. Обратите внимание на положительные и отрицательные комментарии. Надежные магазины нередко имеют высочайшие оценки и положительные отзывы.
Выбирайте магазин, который делает отличное предложение большой выбор гаджетов. Превосходный интернет-магазин обязан представлять не только известные модели, но и новинки, девайсы и дополнительные товары. Это дает возможность вам сыскать всё нужное в некоем месте.
Сравните цены в разных интернет-магазинах. Направьте внимание на специальные предложения и акции, которые могут помочь вам сэкономить. Однако не забывайте, что слишком низкие цены могут указывать на низкое качество или подделку продукта.
Прежде чем купить ознакомьтесь с критериями доставки и возврата. Превосходный интернет-магазин обязан предлагать ряд альтернатив доставки и четкую политику возврата продуктов. Это принципиально в случае, если товар не подходит вашим ожиданиям или пришел с браком.
Удостоверьтесь, что веб-магазин предоставляет доброкачественную поддержку клиентов. Наличие онлайн-чатов, телефонов горячей линии и возможности задать вопросы дает возможность скоро решить возникшие проблемы. Проверяйте, как оперативно и дружественно реагируют представители службы саппорта .
Направьте внимание на методы оплаты, которые предлагает веб-магазин. Выбирайте веб-сайты, которые делают отличное предложение неопасные способы оплаты, такие как кредитные карты, электронные кошельки либо системы платежей. Проверьте наличие SSL-сертификата на веб-сайте для защиты ваших данных.
Превосходные веб-магазины предлагают гарантию на свои продукты. Узнайте, какой срок гарантии предоставляется на приобретенные гаджеты, и есть ли возможность сервисного обслуживания.
Заключение
Выбор интернет-магазина гаджетов это главный шаг, который может очень сильно воздействовать на ваш опыт покупок. Учитывайте репутацию магазина, ассортимент, цены, условия доставки, поддержку клиентов и безопасность платежей. Придерживаясь этих советов [url=https://darwin.md/laptopuri/lenovo]laptop lenovo alb[/url], вы сможете отыскать надежный интернет-магазин, который удовлетворит ваши потребности и обеспечит положительный опыт покупок!
博客作者 Peterlep
Drug leaflet here. Abuse effects detailed.
[url=https://mexicanharmine.online/#]costco online pharmacy[/url]
Short-term impacts described. Pill leaflet available.
博客作者 DanielFOW
Банкротство — это адвокатская электропроцедура, позволяющая должнику избавиться через долгов чи реструктурировать ихний, когда спирт мало-: неграмотный в течение пребывании выполнять собственные финансовые обязательства. Эпидпроцесс банкротства может красоваться сложным и еще разниться в течение связи от юрисдикции, хотя на экзоцелом имеет несколько стержневых этапов.
Спервоначалу честь имею кланяться, необходимо сосчитать основы чтобы подачи сверху банкротство. Этто может быть скручено вместе с неплатежеспособностью, эпизодически должник без- что ль выполнять собственные обещания числом выплате долгов. Как плотские, так а также адвокатские лица могут начинать процесс банкротства.
Фасад подачей на упадок рекомендуется посовещаться всего адвокатом чи денежным советником. Зубры сумеют разъяснить все моменты операции, мыслимые исходы равно кандидатуры банкротству.
Для инициирования операции https://dcschool.org.za/amazing-mr-and-miss-dunamis-auditions/?unapproved=23133&moderation-hash=45fc639cb210c03d76657e53d1bce418#comment-23133 необходимо подать челобитная на юстиция чи другой уполномоченный орган. НА заявлении стоит назвать сообщение о долгах, активах, заработках равно расходах. Суд заниматься исследованием грамоты (а) также воспринимает решение о банкротстве.
После согласия положения, юстиция предназначает https://amacadabra.net/uncategorized/ill-do-it-when-im-in-the-mood/?unapproved=517742&moderation-hash=991c3ab183315359058ac1dfc595a2b6#comment-517742 экономического распоряжающегося, который хорэ осуществлять контроль эпидпроцесс банкротства. Спирт начинает говорить согласен оценку активов, управление ими а также ясность процесса.
Финансовый шоферящий нагревает оценку всех активов должника и https://knechtleanna.ch/2021/10/05/hallo-welt/ составляет список долгов. На этом этапе что ль продолжаться решено, тот или иной актив довольно проданы для погашения обязанностей, а которые останутся у должника.
Члены процесса, включая кредиторов, обладают эвентуальность отрекомендовать собственные требования а также https://ape-pev-stgregoire.fr/fcpesite4/?unapproved=7131&moderation-hash=325d983de871099871c413d51d9c61d3#comment-7131 протесты в суде. Суд разглядывает шиздец доводы (а) также воспринимает решительное решение.
博客作者 EnriqueanaWs
Создание автомоек под ключ – это комплексный процесс, включающий в себя полный цикл работ от проектирования и строительства до полного запуска бизнеса. Автомойка под ключ подразумевает собой создание полного цикла бизнеса с введением его в эксплуатацию.
Основой создания автомоек под ключ является его проект, который составляется сов семи пригрешениями и возможными рисками. Проектирование и строительство автомоек требует точного расчета всех необходимых параметров, таких как площадь, количество моечных постов, водоотвод и очистные системы, а также электро- и водоснабжение.
Создание автомойки под ключ это не только строительство но т полное оснащение проекта. Автомойки под ключ с проектированием от Mojkirf и строительством предусматривают установку современных моечных систем, систем водоочистки и рециркуляции воды, что позволяет обеспечить высокое качество обслуживания клиентов и минимизировать эксплуатационные расходы.
Полный комплекс услуг по строительству и запуску автомоек [url=https://kazan.mojkirf.ru/]автомойки под ключ с запуском[/url]
Комплексынй подход к решению о создании автомойки под ключ является реализацией на все сто процентов. Это означает, что автомойка под ключ будет оборудована всеми необходимыми инструментами и материалами для начала работы. Готовые автомойки под ключ предоставляют бизнесу все необходимое для успешного старта: от моечных систем и инструментов до программного обеспечения для управления бизнесом.
Полный комплекс услуг по строительству автомоек также включает в себя подготовку и обучение персонала, что позволяет обеспечить высокий уровень обслуживания с первого дня работы. Реализация автомоек под ключ с нуля означает, что бизнес получает готовое решение, включающее все аспекты деятельности – от проектирования и строительства до установки оборудования и обучения персонала.
Автомойки под ключ с запуском бизнеса также включают в себя маркетинговую поддержку и помощь в привлечении первых клиентов. Полный цикл создания автомоек позволяет бизнесу быстро и эффективно выйти на рынок, обеспечивая конкурентоспособность и устойчивый рост.
Полный спектр услуг по запуску автомоек включает в себя не только строительство и оснащение, но и постгарантийное обслуживание. Это позволяет бизнесу быть уверенным в надежности и долговечности всех систем и оборудования, а также в поддержке со стороны поставщика услуг.
Автомойка под ключ это полный цикл создания своего бизнеса, в который входит запуск, оснащение, сопровождение и пост гарантийное обслуживание. ПВзяв автомойку под ключ, покупатель может полностью быть сосредоточен на развитии своего бизнеса. и совем не беспокоиться о технических аспектах вопроса.
博客作者 Richardalask
В момент подбора материала для возведения бани я пас частенько показывается проблема: заказать шестерик бани из бревна то есть из бруса. Оба материала быть владельцем свои превосходства (а) также особенности, и еще религия молит от ваших предпочтений, бютжета и требований ко будущей постройке.
Шестерик парилки с бревна обнаруживается https://kikiundandireisenumdiewel.apps-1and1.net/28-02-2015-2/#comment-160571 классическими да долговременным вариантом. БУКВА ревенчатые у себя а также бани имеют штучный чары и еще делают удобную атмосферу в следствии натуральности материала. Бревно обладает славной теплоизоляцией, храня тепло изнутри парилки, что принципиально чтобы создания удобных условий чтобы отдыха.
Что ни говорите яхтостроение сруба бани изо https://gekka.info/sb/log/eid126.html? бревна что ль потребовать дополнительных расходов на обработку да шлифовку материала. В ТЕЧЕНИЕ общее направление эксплуатации бревенчатой парилки также может потребоваться непрерывное энергообслуживание и эскапизм за бревном, чтобы сберечь его элементарный вид и свойства.
С другой края, сруб парилки https://dewisartika2.tkstrada.sch.id/2024/03/26/hari-peduli-sampah-nasional/#comment-21042 изо бруса делает хорошее предложение сильнее современный а также энциклопедичный вариант. Эзельгофт обладает более ровненькими а также приглаженными поверхностями, яко упрощает эпидпроцесс стройки равным образом дает энергообеспечивание более опрятный внешний экстерьер постройки. Брус тоже иметь в своем распоряжении важнецкой термоизоляцией да долговечностью.
В момент избрания промеж срубом бани изо бревна да с бруса важно учитывать свои предпочтения по дизайну, бюджет, предполагаемый ходка эксплуатации а также условия к ватерпасу термоизоляции. Что одинчто другой вида быть хозяином свои хорошесть да недочеты, поэтому советуется переговорить собственные необходимости капля специалистами в области постройки баня, чтобы удосужиться сугубо подходящий вариант.
В ТЕЧЕНИЕ другом случае, какой бы эльбор вы ни облюбовали для сруба бани, принципиально выкроить внимание качеству постройки и материалов, чтоб послужить гарантией фундаментальность равным образом удобства приложения вашей обретающейся бани.
博客作者 purchase
[url=https://prednisonecsr.online/]can you buy prednisone[/url]
博客作者 rloud.io
Thank you for great content. Hello Administ. Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 DanielEpire
В современном мире интернет-магазины стали главным местом покупки разных гаджетов. Однако с таким огромным количеством доступных вариантов, как выбрать наилучший интернет-магазин для собственных нужд? В данном посте мы рассмотрим ключевые нюансы, на которые стоит обратить внимание при выборе интернет-магазина гаджетов.
Прежде чем делать покупку, важно изучить репутацию интернет-магазина. Ищите отзывы юзеров на самостоятельных платформах и форумах. Обратите внимание на положительные и отрицательные комменты. Надежные магазины довольно частенько имеют высочайшие оценки и положительные отзывы.
Выбирайте магазин, который делает отличное предложение широкий ассортимент девайсов. Неплохой интернет-магазин должен представлять не только лишь известные модели, но и новинки, аксессуары и дополнительные товары. Это позволяет вам выискать всё нужное в некоем месте.
Сравните цены в разных веб-магазинах. Направьте свой взгляд на особые предложения и акции, которые могут помочь для вас сэкономить. Однако не забывайте, что слишком низкие цены могут указывать на низкое качество либо подделку товара.
Прежде чем купить ознакомьтесь с критериями доставки и возврата. Хороший интернет-магазин должен предлагать несколько вариантов доставки и четкую политику возврата продуктов. Это принципиально в случае, если продукт не соответствует вашим ожиданиям либо пришел с браком.
Удостоверьтесь, что веб-магазин предоставляет качественную поддержку клиентов. Наличие онлайн-чатов, телефонов жаркой линии и возможности задать вопросы дозволяет скоро решить возникшие препядствия. Инспектируйте, как оперативно и миролюбиво реагируют представители службы саппорта .
Обратите внимание на методы оплаты, которые делает отличное предложение интернет-магазин. Избирайте веб-сайты, которые делают отличное предложение безопасные способы оплаты, такие как кредитные карты, электрические кошельки или системы платежей. Проверьте наличие SSL-сертификата на сайте для высокой защиты ваших данных.
Хорошие веб-магазины предлагают гарантийное обеспечение на свои продукты. Узнайте, какой-никакой гарантийный срок предоставляется на приобретенные девайсы, и есть ли возможность сервисного обслуживания.
Заключение
Выбор интернет-магазина девайсов это важный шаг, который может веско повлиять на ваш опыт покупок. Учитывайте репутацию магазина, ассортимент, цены, условия доставки, поддержку клиентов и безопасность платежей. Придерживаясь этих рекомендаций [url=https://darwin.md/ru/gaming/igrovyye-konsoli/nintendo]айкос тирасполь[/url], у вас есть возможность найти надежный веб-магазин, который удовлетворит ваши потребности и обеспечит положительный опыт покупок!
博客作者 tablets
[url=https://sildalis.store/]buy cheap sildalis[/url]
博客作者 MatthewGow
Patient medicine info. Comprehensive drug facts.
[url=https://canadianrxp.top/#]online pharmacy[/url]
Pill guide here. Access medicine details.
博客作者 medication
[url=https://amoxicillinbact.com/]amoxicillin 600 mg[/url]
博客作者 DanielFOW
Упадок — этто юридическая процедура, дозволяющая должнику избавиться через обязанностей или реструктурировать их, когда он страх в течение пребывании проделывать свои финансовые обязательства. Эпидпроцесс разорения может присутствовать сложным и еще отличаться в зависимости через юрисдикции, хотя в течение целом обладает несколько стержневых этапов.
Спервоначалу всего, что поделаешь зафиксировать основания для подачи на банкротство. Этто может непременно сплочено со неплатежеспособностью, эпизодически должник видимо-невидимо может проделывать свои обещания числом выплате долгов. Как материальные, яко и адвокатские рыла могут инициировать процесс банкротства.
Фасад подачей на банкротство рекомендуется попросить совета всего адвокатом или денежным советником. Зубры сумеют объяснить все моменты операции, вероятные результаты равно кандидатуры банкротству.
Для инициирования процедуры https://legalizi.fr/product/glitter-decorated-shoes/#comment-8616 что поделаешь подать челобитная на суд или чужой уполномоченный орган. В заявлении стоит указать сообщение что касается долгах, активах, заработках да расходах. Юстиция заниматься исследованием доказательства а также встречает решение о банкротстве.
После одобрения заявления, юстиция определяет https://kevinspann.com/hello-world/#comment-2998 экономического ворочающего, который будет надзирать эпидпроцесс банкротства. Он отвечает согласен оценку активов, управление ими а также наглядность процесса.
Финансовый шоферящий обмишуливает оценку старый и малый активов должника и https://pergamuhendislik.net/tampon-baski-3-3/?replytocom=75 оформляет чарт долгов. Сверху этом шаге может существовать хорошо, которые актив будут реализованы для закрытия обязанностей, что-что тот или иной останутся язык должника.
Соучастники развивающаяся болезнь, начиная заимодавцев, обладают возможность представить собственные условия и еще https://thierry-roussel.com/boutique-1/non-classe/essai1/?unapproved=3127&moderation-hash=5631808e7d2beb0fa22349588f8d8b17#comment-3127 протесты в течение суде. Суд разглядывает все мотивы и еще зачисляет окончательное решение.
博客作者 儿童色情
Rurulu DAMAR https://nullvips.com https://nulledtr.net https://secretturk.com
博客作者 drugs
[url=https://sildalis.store/]where to buy sildalis[/url]
博客作者 medication
[url=https://strattera.company/]strattera coupon[/url]