添加自定义注解
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,580 条评论
博客作者 canada pharmaceuticals online generic
It’s the best time to make some plans for the future and it’s time to be happy. I have read this post and if I could I desire to suggest you few interesting things or suggestions. Maybe you could write next articles referring to this article. I desire to read more things about it!
博客作者 blealabop
слоты демо azartnie avtomaty com новые бездепозитные бонусы с выводом без пополнения 1win войти 1winhjk6 золотой меркурий азино777 бонус при регистрации azinoofficiall 777 24 бонус без депозит казино бонус за регистрацию vodka casino bet xyz вулкан 24 бонус 1 икс бет слоты игровые автоматы скачать автоматы демо играйте бесплатно без игровые автоматы с фрибетом без депозита бк пари отзывы скачать 1win на андроид apk новые игры на пс5 карта дня джокер вэй
игровые автоматы белатра с 5000 демо кредитов [url=https://западная-резиденция-ростов.рф/com/sykaaa-casino-bezdepozitniy.html]sykaaa casino бездепозитный[/url] волна казино вход [url=https://западная-резиденция-ростов.рф/otzivi/pokazat-praym-sport-tennis.html]показать прайм спорт теннис[/url] friends casino как вывести [url=https://западная-резиденция-ростов.рф/map2211.html]сколько весит куриная ножка[/url] популярные слоты на деньги [url=https://западная-резиденция-ростов.рф/registratsii/svit-bonanza-real-sweet-bonanza-top.html]свит бонанза real sweet bonanza top[/url] rollingslots [url=https://западная-резиденция-ростов.рф/zerkalo/daddy-zerkalo-rabochee-license-casinos.html]daddy зеркало рабочее license casinos[/url]
casino 7 промокод respin casino7kzerkalo t me casino ru lev official lev chance site игровые автоматы netent рулетка от 1 го рубля maze pokemon black and white 5x 3 5x 8 7 эхолот deeper pro отзывы промо код пин ап скачать пин ап vavada официальный сайт регистрация
1xslots бездепозитный бонус 1xslots officiall ru [url=https://западная-резиденция-ростов.рф/onlayn/viigral-v-onlayn-kazino.html]выиграл в онлайн казино[/url] бесплатные игровые автоматы vulkan avtomaty wrt top [url=https://западная-резиденция-ростов.рф/onlayn/vavada-kak-viigrat.html]vavada как выиграть[/url] где дают деньги за регистрацию без депозита [url=https://западная-резиденция-ростов.рф/onlayn/emulyator-igrovih-avtomatov-onlayn.html]эмулятор игровых автоматов онлайн[/url] лучшие игровые автоматы vsecazzzikitop1 [url=https://западная-резиденция-ростов.рф/demo/igrovie-avtomati-onlayn-demo-mnogo-bonusov-horoshee.html]игровые автоматы онлайн демо много бонусов хорошее[/url] заб ру [url=https://западная-резиденция-ростов.рф/demo/igrat-demo-vavada.html]играть демо вавада[/url]
joy casino com joycasino фриспины aztec sun играть бесплатно демо слот автоматы slotsru5 игра рулетка на деньги с выводом денег ghjvjrjl gjrthljv
博客作者 Edwardkaw
Вавада предлагает большой выбор игр, включая:
Призы и акции
Казино Вавада делает отличное предложение своим игрокам разнородные бонусы и акции, включая:
Удобство платежей
Казино Вавада поддерживает широкий выбор [url=https://vavadaofcasino.ru]вавада казино официальный сайт РІС…РѕРґ зеркало[/url] платежных систем для пополнения счета и вывода средств. Это включает в себя банковские карты, электрические кошельки и криптовалюту. Важно отметить, что казино стремится к резвой обработке запросов на вывод, что является огромным плюсом для игроков.
Клиентская поддержка
Команда помощи Вавада работает круглосуточно, что дает возможность игрокам быстро получать помощь по любым вопросам. Связаться с поддержкой можно через live-чат, электрическую почту либо телефон.
Заключение
Казино Вавада это надежная и интересная онлайн-платформа для любителей азартных игр. С широкой вариацией игр, симпатичными бонусами и качественной поддержкой клиентов, Вавада зарекомендовала себя как одно из лучших мест для игры в глобальной сети интернет. Если вы отыскиваете калоритные эмоции и азарт, Вавада может стать хорошим выбором для вас.
博客作者 canada drugs pharmacy
This design is spectacular! You most certainly know how to keep a reader entertained. Between your wit and your videos, I was almost moved to start my own blog (well, almost…HaHa!) Fantastic job. I really enjoyed what you had to say, and more than that, how you presented it. Too cool!
博客作者 canada pharmaceuticals
What’s up friends, its wonderful piece of writing about teachingand entirely explained, keep it up all the time.
博客作者 best canadian online pharmacy
What’s up colleagues, how is the whole thing, and what you desire to say regarding this article, in my view its really remarkable in support of me.
博客作者 JesseBouct
Отдых и развлечения занимают одно из важнейших мест в человеческой жизни. Наверное, практически невозможно найти такого человека, который бы отказался от предложения отвлечься на время от напряженных будней, расслабиться и отдохнуть. Естественно, существуют различные варианты отдыха, и каждый вправе сам выбирать наиболее подходящий. Для множества людей в разных уголках планеты наилучшим отдыхом являются игры.
Игра и человеческое общество
Тот факт, что игры появились еще на заре развития человеческого общества, не вызывает ни у кого ни малейшего сомнения.
Предположительно, азартные игры появились тогда, когда у людей появилось свободное время, которое они могли тратить на данное развлечение. Первоначально игры носили все – таки прикладной характер. Например, в игре оттачивалось умение выслеживать животное, преследовать его и, в конечном счете, добывать. На таком же принципе строились и военные игры – через обучение и тренировку в овладении приемами использования оружия, а также тактики боя. Кстати, подобные игры и сейчас являются очень популярными среди любителей игровых развлечений.
Многообразие различных игр свидетельствует о том, что люди стремились разнообразить свою жизнь, получать от них не только практические навыки и умения, но и удовольствие. Недооценивать развивающее и прогрессивное значение игр совершенно невозможно, ведь это противоречит самой человеческой природе.
Скачок в развитии
Азарт является одним из самых ярких человеческих чувств, вызывающих целую гамму различных эмоций. Что и говорить, игры, в основе которых лежит азарт, не теряют своей популярности и по сей день.
Целый бум произошел с появленем так называемых слотов, игровых автоматов. Они появлялись в разных заведениях по одному два и быстро завоевали свою популярность, а предприимчивые люди собрали все игровые автоматы в казино.
С появлением интернета и компьютеров, многие казино стали распространятся в онлайне.
Классические казино конечно также остались востребованы, но большинство из них превратилось в элитные клубы по интересам.
Ниже представлены основные особенности казино онлайн:
играть в онлайн казино можно в любое время суток;
чтобы играть достаточно иметь гаджет с выходом в интернет;
огромный ассортимент игр и развлечений;
играть можно не выходя из дома абсолютно в любой стране мира;
реальные возможности выиграть внушительные суммы, наличие бонусов, подарков, акций и пр.
Главное для геймера – определиться с заведением, предлагающим наиболее выгодные условия и имеющим безупречную репутацию.
Современный игровой портал
Мы рекомендуем вам одно из самых проверенных казино полностью соответствует таким и требованиям и с радостью предоставит геймерам свои услуги по организации приятного и доходного досуга [url=https://casino2-vavada.ru]вавада регистрация онлайн[/url]
Здесь есть абсолютно любые игры на разные вкусы, даже самый искушенный геймер обязательно сможет удоволетворить своий поиск.
Основные преимущества интернет – казино "Vavada":
акции, подарки, приятные бонусы каждому клиенту;
качественная и оперативная техническая поддержка;
щедрые бонусы для новичков (даже без депозита);
возможность сыграть в игру без делания ставок (демо – режим);
сто процентная анонимность;
быстрая регистрация.
Администрация всегда обновляет ассортимент игр.
博客作者 Расстановки Хеллингер
Системные расстановки. https://rasstanovkiural.ru
博客作者 Lexaqdjz
Ваш автомобиль в Минске и необходим эвакуатор? Узнайте, как вызвать [url=https://evakuator-minsk-24.by]эвакуатор минск[/url] круглосуточно.
博客作者 canada pharmaceuticals online generic
Just want to say your article is as astounding. The clarity on your submit is just spectacular and i can suppose you are an expert in this subject. Well together with your permission allow me to snatch your feed to keep up to date with forthcoming post. Thank you one million and please carry on the rewarding work.
博客作者 JamesAmura
Серебристый металл это металл, который захватил популярность во многих секторах экономики благодаря своим уникальным свойствам. Легкость, прочность, коррозионная стойкость и простота обработки делают его образцовым материалом для производства разных конструкций и изделий. Одним из более ярких примеров внедрения алюминия являются алюминиевые лестницы, которые обретают широкое применение как в быту, так и в промышленности.
Дюралевые лестницы
Достоинства алюминиевых лестниц
Виды алюминиевых лестниц
博客作者 canadian pharmaceuticals for usa sales
It’s in reality a nice and helpful piece of information. I’m glad that you just shared this helpful information with us. Please keep us up to date like this. Thank you for sharing.
博客作者 Genakccn
Если вы занимаетесь сельским хозяйством, обратите внимание, как [url=https://izmelchiteli-zerna.by]зернодробилка для хозяйства[/url] повысит эффективность вашу работу и увеличить производительность.
博客作者 national pharmacies online
I’m not sure exactly why but this website is loading extremely slow for me. Is anyone else having this issue or is it a issue on my end? I’ll check back later and see if the problem still exists.
博客作者 canadian pharmacy king
What’s up, this weekend is fastidious designed for me, since this moment i am reading this great informative piece of writing here at my residence.