添加自定义注解
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 条评论
博客作者 Davidwaw
Latest pill news. Comprehensive drug guide.
[url=https://avodart4xl.top]generic substitute for avodart[/url]
Access drug facts. Active ingredients listed.
博客作者 matadorbet giriş
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
博客作者 matadorbet casino
Thank you great posting about essential oil. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 maltcasino
Everything is very open and very clear explanation of issues. was truly information.Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 MauriceJar
Психиатрия это область медицины, занимающаяся диагностикой, исцелением и профилактикой психологических расстройств. Современные подходы к психологическому здоровью большое число акцентируют внимание на необходимости создания безопасной и поддерживающей среды для пациентов. Одним из главных качеств таковой среды является анонимность.
По какой причине анонимность очень важна?
Психические расстройства по-прежнему окружены большим множеством мифов и стереотипов. Многие люди боятся обращаться за поддержкою из-за ужаса быть осужденными или неправильно понятыми. Анонимность позволяет избежать предвзятых суждений и нарушений собственной жизни.
Когда пациенты знают, что их данные не будут раскрыты, они могут более открыто гласить о своих чувствах, симптомах и проблемах. Это значительно облегчает процесс диагностики и позволяет врачу лучше осознать состояние пациента [url=https://psy03.ru/]психолог цена[/url]
Анонимные услуги, такие как горячие линии и он-лайн-консультации, делают психиатрическую помощь более доступной для широкой аудитории. Снижение барьеров для обращения за подмогою содействует улучшению общего состояния психического здоровья в обществе.
Анонимные сервисы и их роль
Сегодня существует множество неизвестных сервисов, предоставляющих психиатрическую помощь. Начиная от горячих линий и заканчивая он-лайн-платформами для консультаций, такие сервисы дают возможность получить поддержку без необходимости собственной встречи. Это особенно полезно тем, кто живет в удаленных районах или страдают от социальных фобий.
Заключение
Психиатрия играет важную роль в обеспечении психического здоровья, и анонимность является ключевым нюансом для привлечения людей к специалистам. Создание безопасной атмосферы, где можно открыто обговаривать свои проблемы, помогает разрушать барьеры и способствует улучшению психологического состояния народонаселенья. Главно помнить, что забота о своем психологическом здоровье не менее значима, чем забота о физическом здоровье. Воззвание за поддержкою это признак силы, но не беспомощности.
博客作者 matadorbet casino
Thank you for content. Area rugs and online home decor store. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 ForrestLoupt
Эндодонтия одну из главнейших веток медицины, занятая уходом согласен ротовой полостью и зубами. В ТЕЧЕНИЕ последние лета Город показывает яркий рост в течение зоны стоматологических услуг, предлагая личным жителям широченный спектр перспектив для поддержания самочувствия зубов равно краса улыбки. НА данной посте автор этих строк рассмотрим нынешние тенденции, услуги да отличия стоматологии на белорусской столице.
Сегодняшние технологические процессы
Стоматология на Нашем городе активно чудненько на ногу со порой, внедряя свежеиспеченные технологические течения и технологии лечения. Современные стоматологические поликлиники оборудованы сверхтехнологичным оборудованием, в течение этом численности 3D-сканеры, лазеры и рентген автоматы последнего поколения. Этто дает возможность проводить диагностику равным образом эндодонтия вместе с максимальной пунктуальностью а также наименьшими неудобствами чтобы пациентов.
Рентгеноспектр услуг
Зуболечебные поликлиники Минска делают предложение разнообразные услуги, удовлетворяющие необходимости как старших, яко (а) также детей:
Профессионализм и яйцеобразование
Стоматологи в течение Нашем городке этто высококвалифицированные спецы, имеющие приличное яйцеобразование и опыт работы. Почти многие изо их проходят прибавочное обучение (а) также сертификацию, чтоб быть в линии крайних достижений в течение наделу стоматологии. Областные конференции и семинары содействуют обмену опытом равно введению новых технологий лечения [url=https://stomatologiya-minsk.ru/]https://stomatologiya-minsk.ru/[/url]
Благоустроенность и еще элементарность
Прогрессивные зуболечебные поликлиники Минска усердствуются создать комфортные фон чтобы своих пациентов. Этто охватывает в течение себя удобное время записи, приятные офисы и вежливый персонал. НА отдельных лечебнице предусмотрены программки преданности (а) также скидки чтобы постоянных клиентов. Тоже в течение Минске можно отыскать зуболечебные фокусы, что делают отличное фраза услуги сверху иностранных языках, яко делает их дешевых чтобы иностранцев.
Эпилог
Стоматология в течение Нашем мегаполисов деловито развивается и зовет домашним жильцам большой широта услуг, внедрение сегодняшних технологий равным образом царский ярус профессионализма. Холя что касается состояние здоровья зубов останавливается доступной да комфортной через усилиям дантистов (а) также больниц города. Эпохально владеть в мозгу, что систематические визиты буква стоматологу а также своевременная профилактика этто ключ буква здоровой и благовидной ухмылке продолжаться.
博客作者 Seccadeli cami halısı
Great post thank you. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 Davidwaw
Pill information provided. Drug info here.
[url=https://avodart4xl.top]cheap avodart[/url]
Overdose effects detailed. Access drug data.
博客作者 Tipobet Giriş
Hi, just required you to know I he added your site to my Google bookmarks due to your layout. But seriously, I believe your internet site has 1 in the freshest theme I??ve came across.Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 ThomasAmive
Психиатрия это область медицины, которая сосредоточена на изучении и лечении психических расстройств. Психиатры играют ключевую роль в этом процессе, но их работа часто окружена большим множеством заблуждений и стереотипов. Разговор о психиатрах и их роли между просит открытости и осознания, а в кое-каких случаях анонимности.
Роль психиатра
Психиатры это квалифицированные специалисты, обладающие глубокими познаниями о психологических заболеваниях, их симптомах и способах лечения. Они могут работать в различных сферах, включая государственные и частные поликлиники, психиатрические больницы, исследовательские учреждения и даже в рамках телемедицины.
Основные функции психиатра включают:
Для чего нужна анонимность?
Заключение
Психиатрия это сложно наука, а искусство осознания людской души. Психиатры играют бесценную роль в возрождении психического здоровья, и значимость анонимности в этой сфере нельзя переоценить. Мы должны устремляться творить общество, где каждый сможет свободно обращаться за поддержкою, зная, что их мнение будет уважено, а их конфиденциальность сохранена. Забота о психологическом здоровье это включая личная ответственность, а также коллективная задача.
博客作者 Sahabet Giriş
Nice article inspiring thanks. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 bycasino güncel giriş
I really love to read such an excellent article. Helpful article. Hello Administ . Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 bycasino giris
After all, what a great site and informative posts, I will upload inbound link – bookmark this web site? Regards, Reader.Seo Paketi Skype: ByuMuT@KRaLBenim.Com –– live:by_umut
博客作者 Davidwaw
Medication resource available. Latest pill trends.
[url=https://avodart4xl.top]otc avodart[/url]
Pill impacts described. Comprehensive medication guide.