添加自定义注解
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,354 条评论
博客作者 GregoryFax
Цена сертификата соответствия ИСО 9001 всегда рассчитывается индивидуально, так как зависит от ряда факторов: сферы деятельности; количества и местоположения площадок; численности. Сертификат выдается сроком на 3 года https://teletype.in/@sezdok/optimalnaya-cena-sertifikata-iso09001-v-rossii
博客作者 RobertVag
База этих поставщиков: что этто а также зачем симпатия нужна?
Творенье и шефство информативной банки генпоставщиков представляет собой базисным нюансом чтобы успешного управления бизнесом. В данном посте пишущий эти строки разглядим, что экое ядро данных генпоставщиков, каковые преимущества возлюбленная выдает а также как ее сверхэффективно использовать.
Яко таковское информационная ядро поставщиков?
Ядро данных поставщиков этто структурализованный набор инфы что касается братиях равным образом птицах, которые предоставляют съестные припасы https://www.winnersoftware.com/home/norman-logo/#comment-5897 или услуги вашему бизнесу. Эта информация зажигает в течение себя контактные данные, фон поставки, ассортимент продукта, расценки а также почти все особь статья.
Для чего требуется ядро этих поставщиков?
Как создать информационную основание поставщиков?
Заключение
База генпоставщиков этто обязательная часть тяжбы управления делом. Возлюбленная подсобляет замастырить унше связь с партнёрами, улучшить энергозатрата равным образом для повышения производительности закупок. Эвентуально основанная а также регулярно обновляемая информативная база станет вашим беспроигрышным прибором чтобы преимущества успеха.
博客作者 MatthewJic
Камины это не только лишь источник тепла, но и стильный элемент интерьера, который создает атмосферу уюта и комфорта. В заключительные годы популярность камины существенно возросла, и у покупателей есть возможность избрать из множества вариантов. В данной статье будут рассмотрены традиционные камины и электрические камины, их превосходства и недостатки, но также советы на выборку.
Традиционные камины
Традиционные камины работают на дровах, угле или газе. Их главное превосходство содержится в этом они создают истинный огонь и неповторимую атмосферу, которую не имеет возможности заменить ни один электрический аналог.
Преимущества:
Недостатки:
Электронные камины
Электрические камины представляют собой современное решение для обогрева и стилизации домашнего места. Они работают от сети и могут имитировать эффект горения.
Достоинства:
Недостатки:
Как выбрать камин для дома?
При выборе камины, необходимо [url=https://ibeds.ru/elektricheskie-kaminy-s-effektom-zhivogo-plameni.html]Электрические камины с эффектом живого пламени[/url] учитывать несколько факторов:
Заключение
Как традиционные, так и электронные камины имеют свои преимущества и недостатки. Выбор зависит от личных предпочтений, потребностей и бюджета. Традиционный камин даст для вас атмосферу комфорта и тепла с настоящим пламенем, тогда как электрический станет удобным и безопасным вариантом для современного дома. Избирайте то, что лучше всего подходит вашему образу жизни и требованиям!
博客作者 pharmacy
[url=https://abamoxicillin.com/]can i buy amoxicillin online[/url]
博客作者 RobertVag
Информативная база генпоставщиков: это а также что так она нужна?
Творенье и еще шефство информативной базы генпоставщиков представляет собой принципиальным нюансом чтобы успешного управления бизнесом. НА данной посте да мы с тобой рассмотрим, яко экое информативная ядро поставщиков, каковые преимущества симпатия выдает также яко ее эффективно использовать.
Что этакое ядро данных поставщиков?
База этих генпоставщиков это структурализованный набор информации о фирмах равно моськах, тот или иной дают товары https://htechvn.com.vn/2014/01/01/a-video-blog-post/#comment-6814 или хостинг-услуги вашему бизнесу. Сия информация включает в себе контактные данные, условия поставки, круг продукта, стоимость товаров (а) также почти все особь статья.
Для что-что нужна база данных поставщиков?
Яко сделать информативную основу поставщиков?
Заключение
Ядро генпоставщиков этто необходимая часть процесса управления делом. Симпатия подсобляет улучшить электросвязь с партнёрами, сделать лучше затраты равно нарастить энергоэффективность закупок. Верно основанная а также регулярно обновляемая ядро этих хватит за глаза вашим безопасным прибором для заслуги фуррора.
博客作者 MatthewJic
Камины это включая источник тепла, да и стильный элемент интерьера, который создает атмосферу комфорта и комфорта. В последние годы популярность камины значительно возросла, и у покупателей есть возможность избрать из множества вариантов. В данной статье мы рассмотрим традиционные камины и электрические камины, их преимущества и недочеты, но также советы по выбору.
Традиционные камины
Традиционные камины работают на дровах, угле либо газе. Их главное преимущество заключается в этом они делают настоящий огонь и неповторимую атмосферу, которую не имеет возможности поменять ни один электрический аналог.
Преимущества:
Недочеты:
Электрические камины
Электрические камины представляют собой современное решение для обогрева и стилизации домашнего пространства. Они работают от сети и могут имитировать эффект горения.
Достоинства:
Недочеты:
Как выбрать камин для дома?
При выборе камины, нужно [url=https://vashdom34.ru/pech-kamin-kak-czentr-domashnego-uyuta-vybor-ustanovka-i-ekspluatacziya.html]печь-камин для дома[/url] учитывать несколько факторов:
Заключение
Как традиционные, так и электрические камины имеют свои преимущества и недочеты. Выбор может зависеть от личных предпочтений, потребностей и бюджета. Обычный камин даст для вас атмосферу уюта и тепла с настоящим пламенем, тогда как электронный станет удобным и неопасным вариантом для современного дома. Избирайте то, что лучше всего соответствует вашему образу жизни и требованиям!
博客作者 WilliamCar
Get info immediately. Find pill info.
[url=https://buyedxpills.store]order ed meds[/url]
Current drug information. Prescribing details available.
博客作者 DanielUrgen
Сертификат соответствия ИСО 9001 – документ, который выдается по результатам экспертной проверки и подтверждает, что система менеджмента качества (СМК) организации соответствует международному стандарту ISO 9001 «Системы менеджмента качества. Требования» либо его национальному аналогу ГОСТ Р ИСО 9001 и своевременно совершенствуется https://vc.ru/u/3200429-marev/1137556-sertifikat-iso-9001-chto-eto-takoe-i-dlya-chego-oformlyayut
博客作者 drug
[url=https://clomidsale.com/]cheap clomid 100mg[/url]
博客作者 Jackieobeva
Bitcoin is the key and most well-known cryptocurrency, created in 2008 by an anonymous личность or party of people using the pen-name Satoshi Nakamoto. As a decentralized digital currency, Bitcoin operates without a main sage or cull administrator. Transactions are verified not later than network nodes through cryptography and recorded in a every tom distributed ledger called a blockchain. This ensures transparency and security, making it sensitive for the purpose any single entity to exploit or restraint the network. Bitcoin’s predominant goal is to furnish an another to standard currencies, which are typically controlled by inside banks and governments. By enabling peer-to-peer transactions without the requirement in behalf of intermediaries, Bitcoin aims to revolutionize the financial system, sacrifice greater pecuniary openness and lower proceeding costs.
https://tualet-na-dachu.ru
https://fintechfiesta.info
https://advokat-maiorov40.ru
https://lab314.ru
https://cncmotors.ru
https://beautyindetails.ru
https://part-c.ru
https://okna-smolenskie.ru
https://miningmaster.pro
https://magenta-online.ru
博客作者 cheap
[url=https://lyricamd.online/]lyrica 300 mg price in india[/url]
博客作者 MatthewJic
Камины это не только источник тепла, но и элегантный элемент интерьера, который создает атмосферу комфорта и комфорта. В заключительные годы популярность камины веско возросла, и у покупателей есть возможность избрать из множества вариантов. В данной статье мы рассмотрим традиционные камины и электрические камины, их достоинства и недочеты, также советы на выборку.
Традиционные камины
Традиционные камины работают на дровах, угле или газе. Их основное преимущество заключается в том, что они делают реальный огонь и неповторимую атмосферу, которую не имеет возможности заменить ни один электрический аналог.
Достоинства:
Недостатки:
Электрические камины
Электрические камины представляют собой современное решение для обогрева и стилизации домашнего места. Они работают от сети и могут имитировать эффект горения.
Преимущества:
Недочеты:
Как выбрать камин для дома?
При выборе камины, необходимо [url=https://ibeds.ru/elektricheskie-kaminy-s-effektom-zhivogo-plameni.html]Электрические камины с эффектом живого пламени[/url] учитывать несколько факторов:
Заключение
Как классические, так и электронные камины имеют свои преимущества и недостатки. Выбор зависит от собственных предпочтений, потребностей и бюджета. Обычный камин подарит вам атмосферу уюта и тепла с реальным пламенем, тогда как электрический станет комфортным и безопасным вариантом для современного дома. Выбирайте то, что лучше всего соответствует вашему стилю жизни и требованиям!
博客作者 Jekdrype
https://otbest-bonusy-casino.ru
Start winning today, get a no deposit gift or free spins of your choice. Only the top best bonuses!
博客作者 sale
[url=https://albuterolo.com/]albuterol usa[/url]
博客作者 TimothyImich
[url=https://wigdealers.ru/c]
[/url]
При покупке париков и систем из натуральных волос важно учитывать несколько ключевых аспектов, которые помогут сделать правильный выбор
Во-первых, стоит обратить внимание на происхождение волос. Качественные изделия часто изготавливаются из волос, собранных в одном направлении (Remy hair), что предотвращает спутывание и придаёт натуральный вид. Кроме того, важно узнать, как были обработаны волосы: предпочтительно выбирать минимально обработанные, чтобы сохранить их естественные свойства.
Следующим шагом является выбор типа крепления. Существует несколько вариантов: клейкие основы, клипсы и микро-кольца. Каждое из решений имеет свои плюсы и минусы, зависящие от образа жизни и личных предпочтений [url=https://wigdealers.ru/]купить парик на валберис[/url]. Для периодического ношения и быстрой замены подойдут клипсы, в то время как для долговременного использования более актуальны клеевые основы и микро-кольца, обеспечивающие надёжность и естественный вид.
Также не следует забывать о правильном уходе за париками и системами из натуральных волос. Регулярная чистка, использование специальных шампуней и кондиционеров, применение термозащитных средств при укладке – всё это поможет сохранить качество и долговечность изделия. При соблюдении всех рекомендаций по уходу парик или система из натуральных волос будут радовать вас натуральным и ухоженным видом долгое время.
ЗАПИШИТЕСЬ НА БЕСПЛАТНУЮ ПРИМЕРКУ ПАРИКА: https://wigdealers.ru/