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

网站开发 认证雅思培训机构哪家好机构排名

网站开发 认证,雅思培训机构哪家好机构排名,罗湖网站建设的公司哪家好,北京网站建设 shwl其实所有的Filter都是一样的原理 大致流程: 创建一个自定义Filter, 用于拦截所有异常此Filter正常进行后续Filter调用当调用后续Filter时, 如果发生异常, 则委托给HandlerExceptionResolver进行后续处理即可 以sa-token的SaServletFilter为例 首先注册SaToken的过滤器 pac…

其实所有的Filter都是一样的原理

大致流程:

  1. 创建一个自定义Filter, 用于拦截所有异常
  2. 此Filter正常进行后续Filter调用
  3. 当调用后续Filter时, 如果发生异常, 则委托给HandlerExceptionResolver进行后续处理即可

以sa-token的SaServletFilter为例

首先注册SaToken的过滤器

package kim.nzxy.demo.config;import cn.dev33.satoken.filter.SaServletFilter;
import cn.dev33.satoken.stp.StpUtil;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class SaTokenConfig {/*** 注册 [Sa-Token全局过滤器]*/@Beanpublic SaServletFilter getSaServletFilter() {return new SaServletFilter().addInclude("/**").addExclude("/favicon.ico", "/hello.html").setAuth(obj -> StpUtil.checkLogin());}
}

其次, 自定义一个自己的过滤器, 优先级设为最高:

package kim.nzxy.demo.filter;import jakarta.servlet.FilterChain;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter;
import org.springframework.web.servlet.HandlerExceptionResolver;@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
public class ExceptionHandlerFilter extends OncePerRequestFilter {private HandlerExceptionResolver resolver;@Autowiredpublic void setResolver(@Qualifier("handlerExceptionResolver") HandlerExceptionResolver resolver) {this.resolver = resolver;}@Overrideprotected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) {try {filterChain.doFilter(request, response);} catch (Exception e) {resolver.resolveException(request, response, null, e);}}
}

最后, 自定义一个自己的异常拦截器, 这里就直接返回文字格式的异常Message了:

package kim.nzxy.demo.ex;import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;/*** @author ly-chn* @since 2024/1/17 9:54*/
@RestControllerAdvice
public class AppExceptionHandler {@ExceptionHandler(Exception.class)public String handler(Exception e) {return "Some error happened: " + e.getMessage();}
}

效果如图所示:

image-20240117114112467

完整demo见github

http://www.laogonggong.com/news/29034.html

相关文章:

  • 阿里云 网站托管前端开发培训机构推荐
  • 商会网站怎么做百度公司排名
  • 高仿网站源码百度seo优化收费标准
  • 精品源码青岛网站seo优化
  • 做淘宝优惠券网站企业百度推广怎么收费
  • 济南网站制作网站文章发布在哪个平台好
  • 到哪里做网站自己怎么制作网站
  • 网站交互主要做什么的抖音搜索关键词排名查询
  • 长沙 外贸网站建设最新百度快速收录技术
  • 成都哪家做网站海外推广营销系统
  • 网站建站网站80s隐秘而伟大网站推广优化技巧
  • 学做网站看什么书对网络营销的认识
  • 天津网站优化哪家好今日军事新闻头条最新
  • 做兼职什么网站最靠谱windows优化大师怎么卸载
  • 快速做网站的方法谷歌推广方案
  • 做设计有哪些好用的素材网站有哪些上海网站seo诊断
  • 福田做棋牌网站建设哪家技术好网站推广策划书
  • 巴中哪里可以做公司网站360搜索引擎地址
  • 公司网站建设模板下载站外推广渠道
  • 东莞网站建设多长时间seo
  • 合肥设计工作室广州seo和网络推广
  • 厦门网站建设维护软文案例大全300字
  • 网站公司做的网站点击率怎么查短视频入口seo
  • 网站开发及设计网络服务器的功能
  • wordpress源码下载培训seo
  • wordpress 移动社交主题安卓系统最好优化软件
  • 做思路导图的网站manage郑州新闻发布
  • 苹果手机怎么做网站互联网搜索引擎
  • 昆明做网站建设有哪些杭州优化seo
  • 礼信堂 网站开发学网络营销去哪个学校