Chinaunix首页 | 论坛 | 博客
  • 博客访问: 523919
  • 博文数量: 151
  • 博客积分: 7010
  • 博客等级: 少将
  • 技术积分: 1405
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-22 14:32
文章分类

全部博文(151)

文章存档

2011年(1)

2010年(23)

2009年(1)

2008年(126)

我的朋友

分类: 系统运维

2008-07-04 15:03:31

我们通过代码和web.xml配置文件来介绍servlet的运行原理和生命周期.在这个例子中我们通过实现servlet接口来实现我们的代码。实现servlet接口就要实现接口中的所有方法。

一、代码部分(test.java)
在tomcat的webapps目录下建立myPrj\WEB-INF\classes、myPrj\WEB-INF\lib目录,在classes目录下建立test.java文件
import javax.servlet.*;
import java.io.*;
public class test implements Servlet {
public test() {
}
 
/**
 * 初始化servlet,该函数只会被调用一次(当用户第一次访问该servlet时)
 */
 public void init(ServletConfig parm1) throws ServletException {
  System.out.println("init it");
 }
 
public ServletConfig getServletConfig() {
  return null;
 }
 
/**
 *这个函数用于处理业务逻辑,业务代码部分在这里实现(当用户访问该servlet时,该函数都会被调用)
 */
public void service(ServletRequest parm1, ServletResponse parm2) throws ServletException, IOException {
  System.out.println("service it");
  
  PrintWriter pw = parm2.getWriter();
  pw.println("Hello World");
 }
 
 public String getServletInfo() {
  return null;
 }
 
 /**
  * 以下两种情况会调用destory
  * 1、reload该servlet(在tomcat控制台中reload)
  * 2、关闭tomcat
  */
 public void destroy() {
  System.out.println("destory it");
 }
}

二、web.xml配置文件
在myPrj\WEB-INF下创建如下的web.xml文件
  Welcome to Tomcat
 
     Welcome to Tomcat
 

 
 
    
    hello
     
    test
 

 
 
    
    hello
     
     
    /list
 


三、访问servlet
    1、启动tomcat
    2、输入 就可以访问servlet

四、servlet的生命周期
   当第一次访问servlet时,init()会被调用,然后调用service().接下来每次访问servlet时,service都会被调用。当关闭该servlet时,或者reload该项目时,destory被调用
阅读(5795) | 评论(5) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-07-21 09:43:40

苍天。。还要全部照搬。人家都说这么清楚了。 不知道你们怎么学的。

chinaunix网友2010-07-21 09:43:29

苍天。。还要全部照搬。人家都说这么清楚了。 不知道你们怎么学的。

chinaunix网友2010-04-29 22:30:34

验证了一下了...无法通过运行,全部照搬, 子目录已换名为myprj,仍然报错... HTTP Status 404 - /myprj/list -------------------------------------------------------------------------------- type Status report message /myprj/list description The requested resource (/myprj/list) is not available. -------------------------------------------------------------------------------- Apache Tomcat/6.0.26

chinaunix网友2010-03-07 09:34:59

类名没大写,是编码规范问题,虽然不应该鼓励,但是不影响例子的运行

chinaunix网友2009-12-01 15:53:38

类名都没大写,不知道你的例子是否经过验证了