当前位置: 首页 > news >正文

昆明网站做的好的公司简介排名优化上首页怎么做

昆明网站做的好的公司简介,排名优化上首页怎么做,网站主页图片尺寸,郑州冬青街 网站建设目录 Spring Boot 过滤器1.什么是过滤器2.工作机制3.实现过滤器 Spring Boot 拦截器1. 什么是拦截器2. 工作原理3.实现4.拓展#xff08;MethodInterceptor 拦截器#xff09;实现 过滤器和拦截器区别过滤器和拦截器应用场景过滤器拦截器 Spring Boot 过滤器 1.什么是过滤器 … 目录 Spring Boot 过滤器1.什么是过滤器2.工作机制3.实现过滤器 Spring Boot 拦截器1. 什么是拦截器2. 工作原理3.实现4.拓展MethodInterceptor 拦截器实现 过滤器和拦截器区别过滤器和拦截器应用场景过滤器拦截器 Spring Boot 过滤器 1.什么是过滤器 过滤器Filter是 Servlet 规范规定的在 Servlet 前执行的。用于拦截和处理 HTTP 请求和响应可用于身份认证、授权、日志记录和设置字符集CharacterEncodingFilter等场景。 过滤器位于整个请求处理流程的最前端因此在请求到达 Controller 层前都会先被过滤器处理。 过滤器可以拦截多个请求或响应一个请求或响应也可以被多个过滤器拦截。 2.工作机制 Filter 的生命周期对应的三个关键方法 方法作用init()当请求发起是会调用init()方法初始化Filter实例仅初始化一次 若设置初始化参数时可调用该方法doFilter()拦截要执行的请求对请求和响应进行处理destroy()请求结束时调用该方法销毁Filter的实例 3.实现过滤器 实现 Filter 接口 WebFilter(urlPatterns /*) public class MyFilter implements Filter {Overridepublic void init(FilterConfig filterConfig) throws ServletException {// 用于完成 Filter 的初始化Filter.super.init(filterConfig);}Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {System.out.println(过滤器已经拦截成功);// 执行该方法之前即对用户请求进行预处理执行该方法之后即对服务器响应进行后处理。chain.doFilter(request,response);}Overridepublic void destroy() {// 用于 Filter 销毁前完成某些资源的回收Filter.super.destroy();} }启动类添加注解 ServletComponentScan通过Component和Order(1)注解可以保证过滤器执行顺序 Spring Boot 拦截器 1. 什么是拦截器 依赖于web框架在SpringMVC中就是依赖于SpringMVC框架。在实现上基于Java的反射机制属于面向切面编程AOP的一种运用。由于拦截器是基于web框架的调用因此可以使用Spring的依赖注入DI进行一些业务操作同时一个拦截器实例在一个controller生命周期之内可以多次调用。但是缺点是只能对controller请求进行拦截对其他的一些比如直接访问静态资源的请求则没办法进行拦截处理。 2. 工作原理 SpringMVC的机制是由同一个Servlet来分发请求给不同的Controller其实这一步是在Servlet的service()方法中执行的。所以过滤器、拦截器、service()方法dispatc()方法的执行顺序应该是这样的 3.实现 配置拦截器实现WebMvcConfigurer接口加Configuration注解并重写addInterceptors方法。 Configuration public class MyWebConfigurer implements WebMvcConfigurer {Resourceprivate MyHandlerInterceptor myHandlerInterceptor;Overridepublic void addInterceptors(InterceptorRegistry registry) {ListString patterns new ArrayList();patterns.add(/test/handlerInterceptor);registry.addInterceptor(myHandlerInterceptor).addPathPatterns(patterns) // 需要拦截的请求.excludePathPatterns(); // 不需要拦截的请求} }4.拓展MethodInterceptor 拦截器 MethodInterceptor 是 AOP 中的拦截器它拦截的目标是方法可以不是 Controller 中的方法。 在对一些普通的方法上的拦截可以使用该拦截器这是 HandlerInterceptor 无法实现的。 可用来进行方法级别的身份认证、授权以及日志记录等也可基于自定义注解实现一些通用的方法增强功能。 实现 MethodInterceptor 是基于 AOP 实现的所以根据不同的代理有多种实现方式。 创建 Interceptor 类实现MethodInterceptor接口重写invoke方法加Component注解。 Component public class MyMethodInterceptor implements MethodInterceptor {Overridepublic Object invoke(MethodInvocation invocation) throws Throwable {System.out.println(进入拦截方法执行前拦截方法是 invocation.getMethod().getName());Object result invocation.proceed();System.out.println(方法执行后);return result;}}配置自动代理加Configuration注解并创建自动代理BeanNameAutoProxyCreator。 Configuration public class MyMethodConfigurer {Resourceprivate MyMethodInterceptor myMethodInterceptor;Beanpublic BeanNameAutoProxyCreator beanNameAutoProxyCreator() {// 使用BeanNameAutoProxyCreator来创建代理BeanNameAutoProxyCreator beanNameAutoProxyCreator new BeanNameAutoProxyCreator();// 指定一组需要自动代理的Bean名称Bean名称可以使用*通配符beanNameAutoProxyCreator.setBeanNames(user*);//设置拦截器名称这些拦截器是有先后顺序的beanNameAutoProxyCreator.setInterceptorNames(myMethodInterceptor);return beanNameAutoProxyCreator;}}过滤器和拦截器区别 过滤器是基于函数回调拦截器是基于java的反射机制的。 过滤器是servlet规范规定的只能用于web程序中而拦截器是在spring容器中它不依赖servlet容器。 过滤器可以拦截几乎所有的请求(包含对静态资源的请求)而拦截器只拦截action请求(不拦截静态资源请求)。 过滤器不能访问action上下文、值栈里的对象拦截器可以访问action上下文、值栈里的对象。 在action的生命周期中过滤器只能在容器初始化时被调用一次拦截器可以多次被调用而。 拦截器可以获取IOC容器中的各个bean而过滤器就不行这点很重要在拦截器里注入一个service可以调用业务逻辑。 拦截器是被包裹在过滤器之中。 过滤器Filter 可以拿到原始的http请求但是拿不到你请求的控制器和请求控制器中的方法的信息。 拦截器Interceptor可以拿到你请求的控制器和方法却拿不到请求方法的参数。 切片Aspect: 可以拿到方法的参数但是却拿不到http请求和响应的对象 过滤器和拦截器应用场景 过滤器 过滤敏感词汇防止sql注入设置字符编码URL级别的权限访问控制压缩响应信息 拦截器 登录验证判断用户是否登录。权限验证判断用户是否有权限访问资源如校验token日志记录记录请求操作日志用户ip访问时间等以便统计请求访问量。处理cookie、本地化、国际化、主题等。性能监控监控请求处理时长等。通用行为读取cookie得到用户信息并将用户对象放入请求从而方便后续流程使用还有如提取Locale、Theme信息等只要是多个处理器都需要的即可使用拦截器实现
http://www.dnsts.com.cn/news/63299.html

相关文章:

  • 代做施组 方案的网站你注册过哪些网站官网
  • 在线做公章网站公司做网站有什么好处
  • 网站哪些功能是PHP做的乔拓云网站注册
  • 建设信源网站长春市建设厅网站
  • 网站seo标准网站的做
  • 延庆网站建设南京华夏商务网做网站怎么样
  • wordpress首页小工具白杨seo课程
  • 怎么找网站站长专业开发小程序公司
  • 微信公众号做视频网站jsp做网站
  • 永兴县网站建设公司珠海网站排名提升
  • 怎么搜 织梦的网站网络科技公司简介文案
  • 网站的大小织梦网站主页代码在后台怎么改
  • 小程序源码网站论坛黄江网站设计
  • 深圳网站建设找智恒网络南京设计公司有哪些公司
  • 安徽响应式网站建设哪家有seo内容优化是什么意思
  • 网站设计的关键免费开通网站
  • 网站模板怎么建设网站开发做美工
  • ps做网站像素大小吉林北京网站建设
  • 合肥网站建设服务公司银川制作网站
  • 网站建设小厦门网站设计公司找哪家福建小程序开发
  • 电子商务网站建设市场营销型网站建设策划书怎么写
  • 网址站点异常怎么解决漳州 网站建设公司哪家好
  • 怎么做免费的网站空间建筑英才网首页
  • 烟台北京网站建设音乐类网站建设选题背景
  • 网站建设开发电销话术wordpress文章静态化
  • 网站开发工程师职责单位网站建设目的
  • 网站建设图片链接方法阿里企业邮箱下载
  • 网站建设相关的博客有哪些做的比较好的车载嗨曲网站
  • 银川网站建设是什么10岁一12岁的创意手工
  • 做类型网站做名片最好的网站