干货零食有哪些(干货海鲜)

2.我们的网络应用程序经常接收汉字。由于可能会导致中文乱码,所以我们每次都需要在方法的开头使用request.setCharacterEncoding("utf-8");我们可以直接自己获取参数值吗?设置编码。有能力的!

我们已经想出了解决这个问题的方法。也就是说,我们在发出每个请求之前拦截每个请求,然后在设置完所有内容后释放该请求。类似于我们地铁站的检票系统。大家进站都要刷卡,扣钱后才能进站乘车。

Web中也有这种机制,我们称之为过滤器。这就是我们接下来要学习的过滤器

Filter简介

什么是filter1)Filter的基本功能是拦截Servlet容器调用Servlet(JSP)的过程,从而在Servlet处理请求之前和Servlet响应请求之后实现一些特殊功能。

2)ServletAPI中定义了三个接口类,供开发者编写Filter程序:Filter、FilterChain、FilterConfig

3)Filter程序是一个实现Filter接口的Java类。它类似于Servlet程序。它由Servlet容器调用并执行。

4)Filter程序需要在web.xml文件中注册并设置其可以拦截的资源:Filter程序可以拦截Jsp、Servlet、静态图像文件和静态html文件

filter的运行原理是什么这个Servlet过滤器就是我们的过滤器

1)当web.xml中注册了一个Filter来拦截某个Servlet程序时,这个Filter就成为了Tomcat与Servlet程序之间通信线路上的一道屏障。Filter可以通过Servlet容器对Servlet程序的请求进行拦截,并根据Servlet程序发回Servlet容器的响应来决定是否继续将请求传递给Servlet程序以及是否修改请求及相应的信息。

2)一个Web应用程序中可以注册多个Filter程序,每个Filter程序可以拦截一个或一组Servlet程序。

3)如果有多个Filter程序拦截某个Servlet程序的访问过程,当该Servlet的访问请求到来时,Web容器会将这多个Filter程序组合成一条Filter链(过滤器链)。Filter链中各个Filter的拦截顺序与应用程序的web.xml中映射的顺序一致

Filter-helloword

你好世界

编写过滤器的三个步骤:

1.创建过滤器实现类并实现过滤器接口

2、编写web.xml配置文件,配置过滤器信息。

3.运行项目,可以看到filter起作用了。

代码:

//1.Filter实现类publicclassMyFirstFilterImplementsFilter{@Overridepublicvoidinit(FilterConfigfilterConfig)throwsServletException{System.out.println('初始化方法');}@OverridepublicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsIOException,ServletException{System.out.println('dofiltermethod');}}@Overridepublicvoiddestroy(){System.out.println('销毁方法.');}}//2。web.xml配置过滤器filter-nameMyFirstFilter/filter-namefilter-classcom.atguigu.filter.MyFirstFilter/filter-class/filterfilter-mappingfilter-nameMyFirstFilter/filter-nameurl-pattern/index.jsp/url-pattern/filter-映射//3。运行程序,发现不再显示index.jsp页面,并且后台输出了“dofilter方法”,说明我们编写的过滤器已经被执行了。filter的生命周期1)当服务器启动时,过滤器被创建并初始化,并执行init()方法。

2)当请求通过过滤器时执行doFilter方法。

3)当服务器停止时,调用destroy方法。

filter放行请求我们发现刚才配置过滤器后,无法访问index.jsp页面。访问该页面时,会调用过滤器的dofilter方法。说明dofilter这个方法拦截我们的请求。

我们如何显示页面。也就是如何释放请求。我们观察到一个filterChain被传递到这个方法中。filterChain中有一个doFilter()方法。释放请求只需要调用filterChain的dofilter方法即可。

publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsIOException,ServletException{System.out.println('dofilter方法');chain.doFilter(request,response);//释放请求}filter拦截原理我们在chain.doFilter(request,response);方法后面也写一句,System.out.println

(“执行完doFilter方法后.”),同样在index.jsp页面上编写一个jsp脚本片段,输出的是一个jsp页面。运行程序后,发现控制台输出了这样几句话:

dofilter方法.我按照jsp页面的dofilter方法.我们不难发现filter的运行过程

FilterChain

doFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)

在执行doFilter之前,filterChain对象被容器传递到方法中。调用该对象的.doFilter()方法会释放请求,实际上是执行过滤器链中的下一个doFilter方法,但如果只有一个过滤器,则会被释放。

FilterConfig

FilterConfig与ServletConfig类似,是filter的配置信息对象。FilterConfig对象具有以下方法。

getFilterName():获取当前过滤器的名称。获取到的是web.xml中配置的filter-name的值

getInitParameter(Stringname):获取过滤器的初始化参数。在web.xml中配置

getInitParameterNames():获取过滤器初始化参数名称的集合。

getServletContext():获取当前Web项目的ServletContext对象。

Filter的url-pattern

url-pattern配置哪些请求被过滤器过滤。主要有以下几种配置:

web.xml中配置的/是以当前项目路径为根路径。

1)精确匹配:

/index.jsp/user/login请求/index.jsp、/user/login时会执行过滤方法

2)路径匹配:

/user/*/*/user/路径下的所有请求都会被拦截。/*表示拦截系统的所有请求,包括静态资源文件。

3)扩展匹配:

*.jsp*.action所有后缀名为.jsp.action的请求都会被拦截。

注意:/login/*.jsp的写法是错误的,只能是以上三种形式中的任意一种。新形式无法组合。

*jsp也是错误的,扩展名匹配必须是后缀名

4)多种url-pattern配置

以上三种形式相对有限,但是可以配置多种url-pattern,所以这三种组合基本上可以解决所有问题。

多Filter执行顺序

如果同一个资源有多个过滤器对其进行拦截,则拦截顺序以web.xml中配置的顺序为准

执行流程图如下

请求处理完之后总会回来执行doFilter之后的方法。

HttpServletWrapper和HttpServletResponseWrapper

定义ServletAPI提供了一个HttpServletRequestWrapper类来包装原始请求对象。HttpServletRequestWrapper类实现HttpServletRequest接口中的所有方法。这些方法的内部实现仅调用包装的请求对象。对应方法

//包装类实现ServletRequest接口。publicclassServletRequestWrapperImplementsServletRequest{//包装的ServletRequest对象privateServletRequestrequest;//构造函数传入ServletRequest实现类对象publicServletRequestWrapper(ServletRequestrequest){if(request==null){thrownewIllegalArgumentException('Requestcanbenull');}}this.request=请求;}//通过调用被包装的成员变量的方法来具体实现ServletRequest的方法:公共对象getAttribute(Stringname){returnthis.request.getAttribute(name);}publicEnumerationgetAttributeNames(){returnthis.request.getAttributeNames();}//.}类似的ServletAPI也提供了一个HttpServletResponseWrapper类来包装原始的响应对象

作用用于修改或增强HttpServletRequest或HttpServletResponse的方法。

公共类MyHttpServletRequest扩展了HttpServletRequestWrapper{公共MyHttpServletRequest(HttpServletRequest请求){超级(请求);}@OverridepublicStringgetParameter(Stringname){Stringval=super.getParameter(name);if(val!=nullval.contains('操')){val=val.replace('操','****');返回值;}}推荐博客

程序员除了写代码之外还能如何赚取另一份薪水?

使用Filter中,使用MyHttpServletRequest替换传入的HttpServletRequest

HttpServletRequestreq=newMyHttpServletRequest(request);filterChain.doFilter(req,response);此时到达目标Servlet或JSP的HttpServletRequest实际上是MyHttpServletRequest

THE END
1.带您走入沈阳山姆会员店,解析260元会员卡背后的故事各式各样的干货零食也是随意试吃 哈根达斯 如果你觉得山姆只有吃货,那就大错特错啦! 从生鲜、肉类、零食、日用品、家电、服装、玩具、护肤、酒水、洗护、纸品、母婴、玩具,甚至海淘爆款,全部都有!都是精品,来自全球32个国家直接进口的商品。 小到像德国婴儿奶粉、日本纸尿裤、美国奶瓶、乐高的玩具,大到新...https://www.meipian.cn/1ft9kvqb
2.这些馋嘴的小零食,都在东华路这个无名干货摊上...虽然现在很多干果干货小零食在商场 或者在网上也能买到 但我还是独爱这古旧的方式 好像在无名小推车上买的就会格外有味道一样 要多少称多少,这个要几个那个也要上一点 还可以和阿姨有一搭没一搭的聊点家常 无名干货摊就像一个童年的零食铺 满满一大板车食品 ...https://m.sohu.com/a/277923655_165967
1.小吃果脯果干价格图片品牌怎么样甜心屋蜜饯果干 零食品小吃果脯免洗即食葡萄干 休闲零食 盐津葡萄200g 已有3162人评价 关注 <上一页1234567...下一页>共100页 到第页确定 京东商城(jd.com)为您提供小吃果脯果干相关价格、图片、怎么样等信息,为您购买小吃果脯果干产品提供最有价值的参考!https://www.jd.com/chanpin/2601892.html
2.零食干货店零食干货店加盟零食干货店加盟费多少钱消费者日益关注饮食健康,卖健康已经成为食品企业打品牌、做价值的重要手段。零食干货店自然也不例外,但零食干货店在食品原材料与搭配,加工过程以及储存与运输等环节,始终将健康放在第一位,实行健康一票否决制,健康是零食干货店产品的根基,这一点对于零食干货店管理来讲是丝毫不能动摇的。 https://www.xiangmu.com/xm/lsghd/
3....水果蔬菜方便速食肉类海鲜零食等送货到家!满$35 就包邮,但生鲜食品只有部分城市提供配送,干货零食则全美大部分州都可以送货。网站有简繁体中文、英文和韩语、日语,新用户首单减 $20!支持PayPal、Apple Pay、支付宝付款,网站有简繁体中文、英文和韩语、日语多种语言可选择,非常人性化。 Weee也提供会员服务,客户可购买单月会员服务或整年会员服务。成为会员后...https://www.extrabux.cn/chs/guide/6948353
4.干果零食海报素材干果零食海报图片干果零食海报设计模板觅知网为您找到107个原创干果零食海报设计图片,包括干果零食海报图片,干果零食海报素材,干果零食海报,干果零食海报背景,干果零食海报模板源文件下载服务,包含PSD、PNG、JPG、AI、CDR等格式素材,更多关于干果零食海报素材、图片、海报、背景、插画、配图、矢量、UI、Phttps://www.51miz.com/so-sucai/3755545.html
5.海鲜干货零食有哪些?什么海鲜干货可以当零食吃?→MAIGOO知识摘要:不住在海边的人群,往往对一些海鲜干货零食十分感兴趣。因为它口感好,还能排解工作或者学习所带来的压力。市面上的海鲜干货那么多,究竟有哪些可以当零食吃呢?下面,就给大家介绍常见的海鲜干货零食。 1、鱿鱼丝 鱿鱼丝就是用鱿鱼做成的一种海鲜零食。鱿鱼属于柔鱼类,肌肉组织紧密有弹性,即便是做成了鱿鱼丝之后,...https://m.maigoo.com/goomai/207111.html
6.营养师推荐的养生零食品牌(90后有哪些养生零食?)养娃的这几年,经常听到前面的那几个问题,接下来京妈就总结了一份“如何给孩子挑选零食”的干货经验,分享给家长们,看完记得收藏哦。 先来说这个家长们最关心的问题。 严格来说,给孩子吃点 健康 的零食是没问题的,虽然零食的新鲜度不如普通的日常食物,但有时候零食会方便得多,而且还能给孩子换换口味,解解馋。https://m.shenchuang.com/scnews/20240815/1824112324823355394.html