网站模板定做wordpress 更新文章

pingmian/2025/10/9 8:17:10/文章来源:
网站模板定做,wordpress 更新文章,内蒙古seo公司,安康网站建设技巧一个、总结 简单的说#xff0c;Filter的作用就是拦截(Tomcat的)service#xff08;Request#xff0c;Response#xff09;方法。拿到Request、Response对象进行处理。然后释放控制。继续自己主动流转。其运用的还是“分层”的思想。至于为什么要增加这一层#xff0c;为… 一个、总结   简单的说Filter的作用就是拦截(Tomcat的)serviceRequestResponse方法。拿到Request、Response对象进行处理。然后释放控制。继续自己主动流转。其运用的还是“分层”的思想。   至于为什么要增加这一层为什么要对Request、Response对象进行拦截。个人感觉根本原因是为了对多个server资源Servlet、JSP等的请求、对应进行一些公共的设置。这里强调的是“多个”。假设是一个资源就没有设置Filter的必要由于仅仅须要在这个资源须要的地方之前设置Request、Response就可以。也就是“设置”放到哪里都能够由于非常多请求、响应有非常多共同的设置所以将共同之处抽出来作为一层。就是所谓的Filter。作用例如以下图   传统调用       加上Filter       二、FilterChain   当几个Servlet有一些同样的设置过滤而另几个Servlet有其他同样的设置……这样一个Filter是不能完毕全部的过滤所以就须要多个Filter协作来共同完毕这项任务。于是著名的FilterChain就出来了。那么这个FilterChain中的多个Filter是怎样协作的呢   每一个Filter的职能不同当一个Servlet的请求到达后这个请求就会沿着这条Filter链一个一个走过走到它须要的Filter时。这个Filter就会进行对它的Request、Response进行操作。完成后自己主动向下流转。这就是所谓的职责链模式。   每一个Filter有3个方法   Ø  init(FilterConfig filterConfig)   Ø  doFilter(ServletRequest request, ServletResponse response, FilterChain chain)   Ø  destroy()   三个方法以下进行具体介绍依次运行一个Filter链中的多个Filter的运行顺序例如以下图        即运行第一个过滤器的chain.doFilter()之前的代码----第二个过滤器的chain.doFilter()之前的代码----……----第n个过滤器的chain.doFilter()之前的代码----所请求servlet的service()方法中的代码——所请求servlet的doGet()或doPost()方法中的代码----第n个过滤器的chain.doFilter()之后的代码----……----第二个过滤器的chain.doFilter()之后的代码----第一个过滤器的chain.doFilter()之后的代码。   三、主要接口与方法   首先Servlet过滤器API包括了3个接口它们都在javax.servlet包中各自是Filter接口、FilterChain接口和FilterConfig接口。使用   Ø  全部的过滤器都必须实现Filter接口。该接口定义了init(),doFilter()destory()三个方法。   Ø  FilterChain接口作为了doFilter0方法的參数:  doFilter(ServletRequest request, ServletResponse response,FilterChain chain)   Ø  FilterConfig接口作为了init()方法的參数: init(FilterConfig filterConfig)   也就是过滤器类将实现Filter接口然后使用这个过滤器类中的FilterChain和FilterConfig接口。该过滤器类的—个引用将传递给FilterChain对象以同意过滤器把控制权传递给链中的下一个资源。FilterConfig对象将由容器提供给过滤器以同意訪问该过滤器的初始化数据。以下对3个接口与所包括的方法进行简要介绍   Filter接口   1)       public void init (FilterConfig filterConfig) throws  ServletException   当開始使用servlet过滤器服务时。Web容器调用此方法一次。为服务准备过滤器即通过FilterConfig对象拿到过滤器的初始化參数。即配置文件里配置的信息。然后在须要使用过滤器的时候调用doFilter()。并传递配置信息。   2)       public voiddoFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException   每一个过滤器都接受当前的请求和响应且FilterChain过滤器链中的过滤器应该都是符合条件的都会被运行。doFilter方法中过滤器能够对请求和响应做它想做的一切通过调用他们的方法收集数据或者给对象加入新的行为。   过滤器通过传送至此方法的FilterChain參数调用chain.doFilter()将控制权传送给下一个过滤器。当这个调用返回后过滤器能够在它的 Filter方法的最后对响应做些其他的工作。假设过滤器想要终止请求的处理或得到对响应的全然控制则能够不调用下一个过滤器。而将其重定向至其他一些页面。当链中的最后一个过滤器调用chain.doFilter()方法时。将执行最初请求的Servlet。   3)       public voiddestroy()   假设doFilter()法里的全部线程退出或已超时容器调用此方法。server调用destory()以指出过滤器已结束服务。用于释 放过滤器占用的资源。   FilterChain接口   1)     public voiddoFilter(ServletRequest requestServletResponse response)   throws java.io.IOExceptionServletException   此方法是由Servlet容器提供给开发人员的用于对资源请求过滤链的依次调用通过FilterChain调用过滤链中的下一个过滤   器假设是最后一个过滤器则下一个就调用目标资源。   FilterConfig接口    FilterConfig接口检索过滤器名、初始化參数以及活动的Servlet上下文。   1)       public java.lang.String getFilterName()   2)       public  ServletContext  getServletContex()   3)       public java.lang.String  getlnitParameter(java.lang.String name)   4)       public java.util.Enumeration getlnitParameterNames()   四、配置使用   过滤器通过Web应用程序中的配置描写叙述符web.xml文件里的明。包含部分filter、filter-mapping filter。主要包含   1)       filter-name和fflter-class两个必须的子元素   2)       icon、init-param,display-name,description这4个可选的子元素。   filter-name子元素定义了—个过滤器的名字filter-class指定了由容器加载的实际类init-param子元素为过滤器提供初始化參数。 filter-mapping主要由   1)       filter-name,servlet-name和url-pattem子元素组成。 servlet-name将过滤器映射到一个或多个Servlet上url-pattem将过滤器映射到—个或多个随意特征的URL的JSP页面。   url-pattem的4种配置方式  filterfilter-nameCharsetEncodingFilter/filter-namefilter-classcom.bjpowernode.drp.util.filter.CharsetEncodingFilter/filter-classinit-paramparam-nameencoding/param-nameparam-valueGBK/param-value/init-param/filter!--精确匹配不採用不论什么修饰符 --filter-mappingfilter-nameCharsetEncodingFilter/filter-nameurl-pattern/servlet/TestServlet/url-pattern/filter-mapping!--扩展匹配由*号和扩展名组成 --filter-mappingfilter-nameCharsetEncodingFilter/filter-nameurl-pattern*.jsp/url-pattern/filter-mapping!--路径前缀匹配。包括一个文件夹和一个/* --filter-mappingfilter-nameCharsetEncodingFilter/filter-nameurl-pattern/servlet/*/url-pattern/filter-mapping!--全匹配。使用/* --filter-mappingfilter-nameCharsetEncodingFilter/filter-nameurl-pattern/*/url-pattern/filter-mapping 五、代码演示样例 Filter类 package com.bjpowernode.drp.util.filter;import java.io.IOException;import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse;import org.omg.CORBA.Request; /*** 採用Filter允许处理字符集* author v-wangzhip*/ public class CharsetEncodingFilter implements Filter {private String encoding;Overridepublic void destroy() {// TODO Auto-generated method stub}Overridepublic void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {//System.out.println(CharsetEncodingFilter----begin);//设置字符集request.setCharacterEncoding(encoding);//继续向下运行chain.doFilter(request, response);//System.out.println(CharsetEncodingFilter----end);}Overridepublic void init(FilterConfig filterConfig) throws ServletException {this.encodingfilterConfig.getInitParameter(encoding);System.out.println(encoding---- encoding);} }Web.xml配置 filterfilter-nameCharsetEncodingFilter/filter-namefilter-classcom.bjpowernode.drp.util.filter.CharsetEncodingFilter/filter-classinit-paramparam-nameencoding/param-nameparam-valueGBK/param-value/init-param/filterfilter-mappingfilter-nameCharsetEncodingFilter/filter-nameurl-pattern*.jsp/url-pattern/filter-mappingfilter-mappingfilter-nameCharsetEncodingFilter/filter-nameurl-pattern/servlet/*/url-pattern/filter-mapping   六、总结   个人感觉Filter是将多个请求-响应中公共的须要设置的东西提出来插入到请求-响应之间的一个中间层。多个Filter组成一个FilterChain。每一个Filter有自己的职能。能依照一定规则来处理到达的请求和响应体现了职责链模式。Filter仅仅对post请求起作用它提供了一种声明式服务。具有可插拔能力即能够任意开启和关闭。   版权声明本文博客原创文章博客未经同意不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89031.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站建设网站定制开发国家食品查询网入口

日前,2023年全民终身学习活动周全国总开幕式在重庆举行,自2005年起,终身学习活动周已连续举办了18届,累计带动4亿多群众参与全民终身学习活动周,有效推进全面阅读。 随着全民阅读氛围的持续浓厚,阅读不再是语文学科的专项,不再是学校教育的专属,家庭、社会都在积极参与进来。尤…

企业免费网站建设模板下载十秒折一个萝卜刀

文章目录 一、RCE二、命令执行/注入-概述三、命令执行-常见函数四、PHP命令执行-常见函数1、exec:2、system3、passthru4、shell_exec5、反引号 backquote 五、PHP命令执行-常见函数总结六、命令执行漏洞成因七、命令执行漏洞利用条件八、命令执行漏洞分类1、代码层…

咨询邯郸网站建设网站备案ps

作为一种使用大量文本数据训练的深度学习模型,大模型可以生成自然语言文本或理解语言文本的含义,是通向人工智能的一条重要途径。大模型可以应用于各种机器学习任务,包括自然语言处理、计算机视觉、语音识别、机器翻译、推荐系统、强化学习等…

网站服务器可以更换吗信用门户网站建设观摩

0 前言: STL,为什么你必须掌握 对于程序员来说,数据结构是必修的一门课。从查找到排序,从链表到二叉树,几乎所有的算法和原理都需要理解,理解不了也要死记硬背下来。幸运的是这些理论都已经比较成熟,算法也…

台州网站建设模板自己做网站需要啥

错误样例(使用UTL_HTTP发送http请求时,报出如下错误): 原因: 1、Oracle允许使用几个PL/SQL API(UTL_TCP, UTL_SMTP, UTL_MAIL, UTL_HTTP和 UTL_INADDR)访问外部网络服务,这些API都使用TCP协议。…

介绍自己做衣服的网站建网站好还是开天猫好

先看官网 一、不可变数据的概念 不可变数据意味着数据一旦创建,就不能被更改。在React中,每次对数据的修改都会返回一个新的数据副本,而不会改变原始数据。这种方式确保了数据的稳定性和一致性。 二、Props中的不可变数据 在React中&#xf…

华企立方做网站教育技术学网站模版

什么是高可用性 高可用性不是绝对的,只有相对更高的可用性。百分之百的可用性是不可能达到的。可用性的定义不仅仅包括服务正在运行的时间段,还包括应用是否能以足够好的性能处理请求。 导致宕机的原因 在运行环境的问题中,最普通的问题是…

网站制作公司北京网站建设公司江西网站建设哪家好

台湾Shopee虾皮电商平台为台湾本土卖家和消费者提供了一个线上交易平台。对于想要在台湾市场做虾皮电商的卖家来说,选择合适的产品是非常重要的。本文介绍一些做虾皮电商的选品方法和策略。 首先,了解市场需求是选品的基础。在进入台湾Shopee市场之前&a…

各大设计网站鞍山怎么做平台软件

1.Python 字符串 字符串可以看做是由单个文本字符构成的列表,每个字母构成一个列表元素,可以用下标取值,切片,用于for循环,用len()函数 name Zophoie name[2] name[-3] name[0:3]Zoin nameZOin name len(name)ZOOnot …

铁建设文件在什么网站下载做网站百科

P2392 kkksc03考前临时抱佛脚 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 这个题目的难点在于我们该怎么尽量让左右大脑均分题目时间呢,我们这样想,我们先将所有题目的时间总和累加起来,取其一半。我们知道如果将这n道题目进行时间的尽量…

营销软件网站建设做网站要学会什么软件

2-3查找树 2-结点:含有一个键(及其对应的值)和两条链,左链接指向2-3树中的键都小于该结点,右链接指向的2-3树中的键都大于该结点。 3-结点:含有两个键(及其对应的值)和三条链,左链接指向的2-3树中的键都小于该结点&a…

网站联盟有哪些新媒体营销成功案例

来源:本文原刊于《中国科技论坛》2021年8月第8期摘要:城市与技术的关系由来已久,但将“数字”这一技术概念与城市连接成为专有名词却是新事物。本文从技术变迁的外生驱动和城市发展问题的内生需求两个角度探讨数字城市兴起及发展的动因&#…

深圳网站小程序设计开发济南川芎网站建设

.Net Remoting提供了一种允许一个应用域中的对象与另一个应用域中的对象进行交互的框架。是.NET框架中的一个重要技术改进,它用于减轻运行应用程序的系统开销. 中文名 .Net Remoting 作 用 减轻运行应用程序的系统开销 目录 1 介绍2 .NET Remoting的原理 ▪ 1.NET Rem…

龙华网站 建设深圳信科云服务器快速安装wordpress

前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…

游乐场网站开发推广普通话奋进新征程手抄报

Kubernetes 准入控制器是什么?为什么要使用准入控制器?如何使用?本文对 Kubernetes 准入控制器进行了详细解释。来源 | K8sMeetup作者 | Arun Prasad头图 | 下载于视觉中国Kubernetes 控制平面由几个组件组成。其中一个组件是 kube-apiserver…

做网站大概要福州市城乡建设局

一、介绍 网络架构是Kubernetes中较为复杂、让很多用户头疼的方面之一。Kubernetes网络模型本身对某些特定的网络功能有一定要求,但在实现方面也具有一定的灵活性。因此,业界已有不少不同的网络方案,来满足特定的环境和要求。 CNI意为容器网络…

辽宁省营商环境建设局网站杭州品牌设计公司有哪些

🚀简介 状态模式是一种行为设计模式,它允许对象在其内部状态改变时改变其行为,我们可以通过创建一个状态接口和一些实现了该接口的状态类来实现状态模式。然后,我们可以创建一个上下文类,它会根据其当前的状态对象来改…

wordpress站长邮箱手机网页设计

我们都知道,抖音直播购物车的商品链接只能是抖音小店的,如果没有开通抖音小店,还能添加小店链接吗? 也是可以的。 抖音直播小黄车的链接可以是自己的小店商品,也可以是别人的小店商品。 抖音直播上链接有两种方式&a…

网站手机端 怎么做北京好用的h5建站

文章目录 力扣141-环形链表示例代码实现要点剖析 力扣141-环形链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测…

电商网站多少钱wordpress本地图片不显示图片

文章目录 1、日期函数2、字符串函数3、数学函数4、其它函数 1、日期函数 //获取日期 select current_date(); //获取时间 select current_time(); //获取时间戳, 格式为日期时间 select current_timestamp(); //获取当前时间, 格式为日期时间 select now(); //获取参数的日期部…