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

用wordpress二级菜单导航seo怎么推排名

用wordpress二级菜单导航,seo怎么推排名,wordpress dz论坛,站长工具日本亚洲欧1.简介 在 Java Web 开发中,Filter 是一个非常重要的组件,用于在请求到达 Servlet 之前或响应返回客户端之前对请求和响应进行预处理或后处理。Filter 可以用来实现多种功能,如日志记录、权限检查、编码转换、请求头修改等。就好比机场的层层…

1.简介

在 Java Web 开发中,Filter 是一个非常重要的组件,用于在请求到达 Servlet 之前或响应返回客户端之前对请求和响应进行预处理或后处理。Filter 可以用来实现多种功能,如日志记录、权限检查、编码转换、请求头修改等。就好比机场的层层安检,对前来的乘客进行检查过滤,携带违规物品,未买机票等不满足机场要求的就会被阻止进入。

2.Filter 的工作原理

  • 配置:在 web.xml 文件中或使用注解来配置 Filter

    web.xml中配置

<filter><!--设置filter的别名--><filter-name>LoggingFilter</filter-name><!--filter的字节码路径--><filter-class>com.example.LoggingFilter</filter-class>
</filter><filter-mapping><!--使用filter别名所对应的过滤路径,可以有多个--><filter-name>LoggingFilter</filter-name><!--/*表示对所有路径进行过滤--><url-pattern>/*</url-pattern><!--所要过滤的servlet的别名--><servlet-name>servlet1</servlet-name>
</filter-mapping>

使用注解@WebFilter,它有如下几个常用的值:

  1. filterName: filter的别名相当于标签
  2. urlPatterns:所要过滤的资源url,相当于标签
  3. ServletNames:所要过滤的servlet别名,相当于 servletNames
@WebFilter(filterName = "loggingFilter",urlPatterns = {"/servlet1","*.html"},servletNames = {"servlet1","Servlet2"}
)
  • 拦截:当请求到达时,Filter 会拦截请求,并执行预处理逻辑。

    在请求到达目标资源前所执行的一些操作,如检查用户是否有权限访问记录、请求和响应的信息

  • 放行Filter 可以选择是否放行请求到目标资源(如 Servlet)。此时会执行FilterChaindoFilter方法代表放行。

    FilterChain表示Filter链,若对于该资源,后续还有其他Filter要进行过滤,此时的doFilter方法就会转而执行其他的Filter;若此时没有Filter要进行过滤,那么便会放行,进行目标资源的处理(如,servlet)

  • 后处理:在目标资源(如 Servlet)处理完请求后,Filter 可以对响应进行后处理。

3.Filter的生命周期

包括初创建始化过滤销毁四个阶段。

阶段对应方法执行时机执行次数
创建对象构造器web应用启动时1次
初始化方法void init(FilterConfig filterConfig)构造完毕1次
过滤请求void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)每次请求多次
销毁default void destroy()web应用关闭时1次

特别注意的的时Filter在web应用启动时就创建了,并且进行初始化,这个过程只会出现一次。

4.Filter的执行顺序

一个web项目中,可以同时定义多个过滤器,当多个过滤器对同一个资源进行过滤时,工作位置有先后,整体形成一个工作链,称之为过滤器链(FilterChain

  • 当使用配置文件进行配置时

    过滤器链中的过滤器的顺序由<filter-mapping>标签的定义顺序决定

  • 当使用注解的方式进行配置时

    通常会把全部的过滤器放在一个包下,此时,执行顺序为类名的字典排序由小到大依次执行

5.一个简单的Filter的示例

案例要求:当用户访问资源时,检查其是否进行登陆,若未登录则跳转到登录页, 若以登录则放行

@WebFilter("/*")
public class CheckLoginFilter implements Filter {@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)throws IOException, ServletException {//向下转型,实现重定向,获得session等功能HttpServletRequest httpRequest = (HttpServletRequest) request;HttpServletResponse httpResponse = (HttpServletResponse) response;// 检查用户是否已登录String user = (String) httpRequest.getSession().getAttribute("username");if (user == null) {// 用户未登录,重定向到登录页面httpResponse.sendRedirect(httpRequest.getContextPath() + "/login");} else {// 用户已登录,放行请求,注意是调用的FilterChain中的doFilter方法!!chain.doFilter(request, response);}}
}
http://www.yidumall.com/news/87431.html

相关文章:

  • 正能量网站大全网站设计制作一条龙
  • 做恶搞网站软件有哪些大数据营销专业
  • 高端网站建设天软科技可以投放广告的网站
  • 免费vip电影网站怎么做太原最新情况
  • dw做的网站链接大数据营销系统怎么样
  • wordpress还原数据库快抖霸屏乐云seo
  • 城阳网站开发公司国外外链平台
  • 橙子建站是诈骗吗发布信息的免费平台有哪些
  • 鲁山网站建设百度云超级会员试用1天
  • 网站建设公司机构产品软文范例1000字
  • 做彩票网站的方案网站优化就是搜索引擎优化
  • laravel做网站免费seo优化
  • 网站总浏览量天天seo百度点击器
  • 北京公司网站设计价格百度竞价代理公司
  • 做家乡网站源代码西安百度关键词优化
  • 广州番禺区房价网站seo诊断分析报告
  • 网站css优化网站推广方式组合
  • 做汽车网站免费影视软件靠什么赚钱
  • 中国顶级网站建设黄冈地区免费网站推广平台
  • 学校网站建设及使用档案百度账号怎么注销
  • 单位网站建设实施方案搜索引擎优化公司
  • 上门做网站公司网页模板之家
  • 企业网站用免费程序sem竞价代运营
  • 佛山网站建设推荐重庆企业网站排名优化
  • 泉州企业网站维护定制搜索引擎哪个最好用
  • 网站做重新做_域名不换_空间想转到新网站这边新闻摘抄2022最新5篇
  • 新手网络设计师人生规划网站整站优化推广方案
  • 随州网站建设哪家专业免费crm系统手机版
  • 临沂做网站哪家好网推渠道
  • 哪个网站可以免费做国外网站宁波网站建设优化企业