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

网站改版用新空间好吗中小型公司网络设计方案

网站改版用新空间好吗,中小型公司网络设计方案,如何建立一个网站视频教学,wordpress换菜单样式背景 在日常开发中#xff0c;经常会有需要统一对请求做一些处理#xff0c;常见的比如记录日志、权限安全控制、响应处理等。此时#xff0c;ServletApi中的Filter类#xff0c;就可以很方便的实现上述效果。 Filter类 是一个接口#xff0c;属于 Java Servlet API 的一部…背景 在日常开发中经常会有需要统一对请求做一些处理常见的比如记录日志、权限安全控制、响应处理等。此时ServletApi中的Filter类就可以很方便的实现上述效果。 Filter类 是一个接口属于 Java Servlet API 的一部分主要用于在 Servlet 处理请求之前或之后执行过滤任务。Filter 的作用是拦截请求和响应从而实现一些通用的功能而无需修改 Servlet 或 JSP 的代码。 Filter源码 从Filter的源码可以看出Filter是一个接口Filter 的生命周期由三个主要方法控制。分别是init / doFilter / destory方法。 接下来具体讲一下这三个方法的作用 init(FilterConfig filterConfig)初始化 Filter在 Filter 被加载时调用一次。一般用于加载资源、初始化配置信息等。从入参FilterConfig看出可以获得上下文、请求参数等信息 doFilter(ServletRequest request, ServletResponse response, FilterChain chain)核心方法用于处理一些具体的过滤逻辑。可以获得并处理request, response信息 在调用 chain.doFilter(request, response) 之前可以对请求进行预处理。 在调用 chain.doFilter(request, response) 之后可以对响应进行后处理。 如果不想让请求继续向下传递可以不调用 chain.doFilter(request, response)。 destroy()销毁 Filter在 Filter 被卸载时调用一次。一般用于释放资源、清理等逻辑。 Filter场景  Filter 的核心功能是拦截请求和响应从而实现以下功能 日志记录记录请求的详细信息如请求的 URL、参数、时间戳等。 权限检查验证用户是否具有访问特定资源的权限。 响应修改修改响应的内容或格式例如添加 HTTP 响应头。 资源管理限制对某些资源的访问频率或次数。 Filter使用示例 例如我们可以在每次请求中记录请求的耗时时长并在注入TRACE_ID参数以方便后续根据日志进行链路追踪。 import javax.servlet.*; import java.io.IOException;public class LoggingFilter implements Filter {Overridepublic void init(FilterConfig filterConfig) throws ServletException {System.out.println(LoggingFilter initialized);}Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {long startTime System.currentTimeMillis();String traceId request.getHeader(TRACE_ID);if (StrUtil.isBlank(traceId)) {traceId UUID.randomUUID().toString().toLowerCase().replaceAll(-, );}try {//设置链路IDMDC.put(TRACE_ID, traceId);response.addHeader(TRACE_ID,traceId);// 调用下一个 Filter 或 Servletchain.doFilter(request, response);}finally {MDC.remove(traceId);com.zwy.discover.mybatis.LogConfig.remove();}long endTime System.currentTimeMillis();//打印请求耗时System.out.println(Request processed in (endTime - startTime) ms);}Overridepublic void destroy() {System.out.println(LoggingFilter destroyed);} } Filter配置方式 使用 web.xml 配置 filterfilter-nameMyFilter/filter-namefilter-classcom.example.LoggingFilter/filter-classinit-paramparam-nameparam1/param-nameparam-valuevalue1/param-value/init-param /filter filter-mappingfilter-nameLoggingFilter/filter-name!-- 拦截所有请求 --url-pattern/*/url-pattern /filter-mapping 使用注解配置Servlet 3.0 从 Servlet 3.0 开始可以使用 WebFilter 注解来定义 Filter无需在 web.xml 中配置。 WebFilter(filterName LoggingFilter, urlPatterns /*) public class LoggingFilter implements Filter {// Filter 方法实现 }
http://www.dnsts.com.cn/news/158360.html

相关文章:

  • 网站标题的重要性网站营销公司
  • 芗城网站建设公司保定专业网站建设
  • 网站做端口是什么找人做网站怎么做
  • 微商网站如何做网站建设哪种语言好
  • 网泰网站建设网络seo是啥软件
  • 网站域名过期怎么办网站设计是什么意思
  • 网络安全设计方案黄骅seo
  • dede淘宝客网站国外红人营销网站
  • 物流企业网站wordpress footer错位
  • 重庆专业网站定制创建网站向导和模板
  • 网站建设新闻发布注意四川省住房和城乡建设厅网站首页
  • 临漳网站制作泰安网站建设找工作
  • 代发网站建设教程天津百度推广优化排名
  • 惠州外贸网站建设推广如何做好网站seo
  • 网站建设兼职劳务协议书如何建立微信小程序卖自己的产品
  • 汕头企业网站推广方法网站做百度收录的意义
  • 网站开发留言板廊坊网站建设企业
  • 捕鱼游戏网站建设步骤做网站交易装备可以么
  • 怎么制作网站程序从什么网站找做游戏的代码
  • 整站优化关键词排名餐饮网站建设案例
  • 加强政务门户网站建设大型网站设计方案
  • 樟树有哪几个网站做爆药库网站设计示例
  • 企业网站制作设wordpress add_user_meta
  • 环球资源网站什么时候做的专门做财经的网站
  • php网站开发多少钱oa办公系统网址
  • 做电销有什么资料网站北京cms建站系统
  • 画图标网站wordpress怎么安装到服务器配置
  • 中国新闻社是央企吗巩义网站优化公司
  • 重庆网站制作的网站国外室内设计专业大学排名
  • 漫画网站做任务给金币打字赚钱