Servlet 笔记

Posted 好奇害死猫+1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet 笔记相关的知识,希望对你有一定的参考价值。

1,精确配置
表单提交地址
  action="<%=request.getContextPath()%>/AddNewsServlet"
  <%=request.getContextPath()%> -->获取页面上下文环境
  <url-pattern>配置内容: <url-pattern>/AddNewsServlet</url-pattern>
2,Servlet 和 Filter 初始化顺序
  ①Filter 在web服务器启动时即完成实例化和初始化
  ②Servlet 在提交请求时才完成初始化
  ③然后执行 Filter 的 dofilter()方法
  ④其次执行 Servlet 的 doPost()方法 或 doGet()方法

3,servlet 生命周期
  实例化 客户端访问(只执行一次) -->Servlet 创建于用户第一次调用对应于该 Servlet 的 URL 时
  初始化 客户端访问(只执行一次) -->当用户调用一个 Servlet 时,就会创建一个 Servlet 实例,每一个用户请求都会产生一个新的线程,
  适当的时候移交给 doGet 或 doPost 方法
  请求处理 客户端提交请求
  销毁 服务端关闭或重新发布

4,servlet 转发页面 路径前需加 ‘/‘,如:
  request.getRequestDispatcher("/pages/succies.jsp").forward(request, response);

5,servlet 多选框
1):html:
  <input type="checkbox" name="web" value="runoob" checked="checked" /> 菜鸟教程<br>
  <input type="checkbox" name="web" value="google" /> Google<br>
  <input type="checkbox" name="web" value="taobao" checked="checked" /> 淘宝<br>
2):servlet:
  String[] paramNames = request.getParameterValues("web");
  request.setAttribute("paramNames", paramNames);
3):显示:
  <c:forEach items="${paramNames }" var="str">
    <p>${str }</p>
  </c:forEach>

6,servlet 和 filter 执行顺序
  Filter------>init()方法 Web服务器启动
  Filter------>doFilter()方法 客户端访问
  servlet---->init()初始化方法 客户端请求
  Filter------>doFilter()方法 客户端请求
  servlet---->service方法 客户端请求
  servlet----->doGet()方法 客户端请求
  servlet---->destroy() 重新发布/服务端关闭
  Filter----->destroy()

 

以上是关于Servlet 笔记的主要内容,如果未能解决你的问题,请参考以下文章

servlet学习笔记

笔记 - Servlet

Servlet复习笔记16-01-25

Servlet笔记6--Servlet程序改进

Servlet学习笔记

Servlet学习笔记