码迷,mamicode.com
首页 > 其他好文 > 详细

Servlet 笔记

时间:2017-06-27 23:28:55      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:上下   cti   提交   each   let   产生   ram   name   value   

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 笔记

标签:上下   cti   提交   each   let   产生   ram   name   value   

原文地址:http://www.cnblogs.com/sjmbug/p/7087334.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!