Web的Filter,Listener和Servlet怎么用
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇文章主要介绍"Web的Filter,Listener和Servlet怎么用"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Web的Filter,Listen
千家信息网最后更新 2025年02月23日Web的Filter,Listener和Servlet怎么用
这篇文章主要介绍"Web的Filter,Listener和Servlet怎么用"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Web的Filter,Listener和Servlet怎么用"文章能帮助大家解决问题。
Filter:过滤器
1. 概念:* 生活中的过滤器:净水器,空气净化器,土匪、* web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能。* 过滤器的作用: * 一般用于完成通用的操作。如:登录验证、统一编码处理、敏感字符过滤...2. 快速入门:1. 步骤: 1. 定义一个类,实现接口Filter 2. 复写方法 3. 配置拦截路径 1. web.xml 2. 注解2. 代码: @WebFilter("/*")//访问所有资源之前,都会执行该过滤器 public class FilterDemo1 implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { System.out.println("filterDemo1被执行了...."); //放行 filterChain.doFilter(servletRequest,servletResponse); } @Override public void destroy() { } } 3. 过滤器细节: 1. web.xml配置demo1 cn.itcast.web.filter.FilterDemo1 2. 过滤器执行流程 1. 执行过滤器 2. 执行放行后的资源 3. 回来执行过滤器放行代码下边的代码3. 过滤器生命周期方法 1. init:在服务器启动后,会创建Filter对象,然后调用init方法。只执行一次。用于加载资源 2. doFilter:每一次请求被拦截资源时,会执行。执行多次 3. destroy:在服务器关闭后,Filter对象被销毁。如果服务器是正常关闭,则会执行destroy方法。只执行一次。用于释放资源4. 过滤器配置详解 * 拦截路径配置: 1. 具体资源路径: /index.jsp 只有访问index.jsp资源时,过滤器才会被执行 2. 拦截目录: /user/* 访问/user下的所有资源时,过滤器都会被执行 3. 后缀名拦截: *.jsp 访问所有后缀名为jsp资源时,过滤器都会被执行 4. 拦截所有资源:/* 访问所有资源时,过滤器都会被执行 * 拦截方式配置:资源被访问的方式 * 注解配置: * 设置dispatcherTypes属性 1. REQUEST:默认值。浏览器直接请求资源 2. FORWARD:转发访问资源 3. INCLUDE:包含访问资源 4. ERROR:错误跳转资源 5. ASYNC:异步访问资源 * web.xml配置 * 设置 demo1 /* 标签即可5. 过滤器链(配置多个过滤器) * 执行顺序:如果有两个过滤器:过滤器1和过滤器2 1. 过滤器1 2. 过滤器2 3. 资源执行 4. 过滤器2 5. 过滤器1 * 过滤器先后顺序问题: 1. 注解配置:按照类名的字符串比较规则比较,值小的先执行 * 如: AFilter 和 BFilter,AFilter就先执行了。 2. web.xml配置: 谁定义在上边,谁先执行
Listener:监听器
* 概念:web的三大组件之一。* 事件监听机制 * 事件 :一件事情 * 事件源 :事件发生的地方 * 监听器 :一个对象 * 注册监听:将事件、事件源、监听器绑定在一起。 当事件源上发生某个事件后,执行监听器代码* ServletContextListener:监听ServletContext对象的创建和销毁* 方法: * void contextDestroyed(ServletContextEvent sce) :ServletContext对象被销毁之前会调用该方法 * void contextInitialized(ServletContextEvent sce) :ServletContext对象创建后会调用该方法* 步骤: 1. 定义一个类,实现ServletContextListener接口 2. 复写方法 3. 配置 1. web.xml* 指定初始化参数 cn.itcast.web.listener.ContextLoaderListener 2. 注解: * @WebListener
servlet
* 概念:运行在服务器端的小程序* Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。* 将来我们自定义一个类,实现Servlet接口,复写方法。* * 快速入门:1. 创建JavaEE项目2. 定义一个类,实现Servlet接口 * public class ServletDemo1 implements Servlet3. 实现接口中的抽象方法4. 配置Servlet 在web.xml中配置:demo1 cn.itcast.web.servlet.ServletDemo1 * 执行原理:1. 当服务器接受到客户端浏览器的请求后,会解析请求URL路径,获取访问的Servlet的资源路径2. 查找web.xml文件,是否有对应的 demo1 /demo1 标签体内容。3. 如果有,则在找到对应的 全类名4. tomcat会将字节码文件加载进内存,并且创建其对象5. 调用其方法* Servlet中的生命周期方法:1. 被创建:执行init方法,只执行一次 * Servlet什么时候被创建? * 默认情况下,第一次被访问时,Servlet被创建 * 可以配置执行Servlet的创建时机。 * 在 标签下配置 1. 第一次被访问时,创建 * 的值为负数 2. 在服务器启动时,创建 * 的值为0或正整数 * Servlet的init方法,只执行一次,说明一个Servlet在内存中只存在一个对象,Servlet是单例的 * 多个用户同时访问时,可能存在线程安全问题。 * 解决:尽量不要在Servlet中定义成员变量。即使定义了成员变量,也不要对修改值2. 提供服务:执行service方法,执行多次 * 每次访问Servlet时,Service方法都会被调用一次。3. 被销毁:执行destroy方法,只执行一次 * Servlet被销毁时执行。服务器关闭时,Servlet被销毁 * 只有服务器正常关闭时,才会执行destroy方法。 * destroy方法在Servlet被销毁之前执行,一般用于释放资源* Servlet3.0:* 好处: * 支持注解配置。可以不需要web.xml了。* 步骤: 1. 创建JavaEE项目,选择Servlet的版本3.0以上,可以不创建web.xml 2. 定义一个类,实现Servlet接口 3. 复写方法 4. 在类上使用@WebServlet注解,进行配置 * @WebServlet("资源路径")
关于"Web的Filter,Listener和Servlet怎么用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
过滤器
资源
方法
配置
服务
服务器
事件
对象
接口
监听
注解
路径
代码
监听器
标签
概念
步骤
浏览器
知识
问题
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库安全管理笔试题
国家网络安全大会开幕式直播
幼儿园家长网络安全宣传讲座
MC网易版怎么开服务器
服务器组策略管理编辑器在哪
怒江长期上门回收服务器
虚拟机可以配dns服务器吗
木瓜互联网科技有限公司
服务器电源热插拔
梦幻西游网页版新服务器开启时间
计算机网络技术带过
新华互联网科技招聘
qq炫舞2连接不上服务器
芜湖应用软件开发平台
高清点播服务器看日一人BB真爽
求生之路2服务器连接不到
网络安全硬件市场竞争
大连理工数据库系统的设计与实现
观看国家网络安全宣传周网址
晋城软件开发培训
软件开发中算法的重要性
徐州提供网络技术服务电话
网站数据库连接不上怎么回事
网络安全与法律职业资格考试
软件开发项目小组组长
独立服务器的安全数据
常州哪里培训软件开发
wpf 连接sql数据库
湖北服务器机柜维修云主机
司机用什么软件开发票