Java Servlet 简记

本文深入探讨Servlet的生命周期,包括初始化、请求处理与销毁过程。解析过滤器执行顺序、异常捕获机制、cookie与session的工作原理。同时,介绍如何实现页面重定向、自动刷新、邮件发送及国际化设置,提供网站访问量统计方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

定义:介于客户端请求与后台数据处理之间的中间层。

生命周期:用户第一次请求时执行一次init() 创建servlet对象,之后请求不再创建,不同用户产生新的线程,最后容器销毁之前执行一次 destory()。

过滤器:实现 javax.servlet.Filter。过滤器执行顺序:按照 web.xml中 filter-mapping 排列顺序。

异常捕获:error-page 中定义 错误码或错误类型 与 对应的请求路径(location)。

cookie: 实例化cookie对象,设置内容与过期时间。

session:以cookie为基础,根据存储在客户端的 sessionId  来识别同一用户。注意 所谓 持久session 和 会话 session。

重定向:HttpServletResponse.sendRedirect(String location)  等价于

                response.setStatus(response.SC_MOVED_TEMPORARILY);

                response.setHeader("Location", site);

简单计数器:单个页面(servlet)访问量 - 在 servlet init()中初始化全局变量,每次请求后增加访问数

                      全网站访问量 - 用 过滤器(filter)实现,在一个实现了 Filter 的类中init()初始化全局变量,执行过滤时增加访问数

自动刷新页面: response.setIntHeader("Refresh", seconds);

支持发送电子邮件: 依赖 JavaMail API 和 Java Activation Framework)JAF)。

国际化: 获取区域对象 Locale locale = request.getLocale()。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值