`
Before_Morning
  • 浏览: 35343 次
文章分类
社区版块
存档分类
最新评论

温故知新--servlet(三)--servlet的调用过程和生命周期

 
阅读更多

对于servlet的调用过程和生命周期,我们可以结合一个小小的实例来进行分析和理解。

首先,我们建立一个servlet:

package com.jjyy.servlet.call;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * servlet的调用过程
 * @author JiangYu
 *
 */
public class ServletCallProcess extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setContentType("text/html;charset=utf-8");
		response.getWriter().write("测试servlet的调用过程");
	}
	
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	
	}

}

其次,将我们的servlet注册到web.xml中

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <servlet>
    <servlet-name>ServletCallProcess</servlet-name>
    <servlet-class>com.jjyy.servlet.call.ServletCallProcess</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>ServletCallProcess</servlet-name>
    <url-pattern>/ServletCallProcess</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>


启动Tomcat服务器,在浏览器中访问以下我们的Servlet(注意打开HttpWatch注意观察请求和响应信息):


从上面的实验来看,我们可以看到了浏览器给服务器发送了一个请求,服务器对浏览器的请求做了一次响应。这就完整的做完了一次请求和响应的测试。那么其中的调用过程和具体执行的细节是怎么一回事呢?下面通过一副图来说明servlet的调用过程和servlet的生命周期。

通过上面的图解分析,相信应该能够直观的描述出servlet的调用过程了,对应的也讨论了一下servlet的生命周期。

对于学过的东西,适当的复习一下,真的有种温故而知新的感觉,希望自己能够坚持下去。

预告一下,下一节准备谈一谈servlet中的线程安全问题。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics