什么是servlet技术?如何部署和新建一个servlet?

1、什么是servlet?

    servlet是用Java编写的运行在web服务器中的程序,它可以调用服务器端的类,也可以被调用。它自己本身就是一个类。

JSP页面在编写完成后,在web引擎中运行前也会被编译器先转换为servlet,再编译成字节码文件,因此servlet和JSP页面是一一对应的。

注意区分:servlet,JavaScript,和javaApplet是有区别的。

servlet是运行在服务器端的程序,JavaScript是运行在客户端浏览器中的脚本程序,javaApplet是运行在客户端的Java小程序。

1.1 servlet的工作原理。

servlet由web服务器引擎负责编译执行,客户端浏览器访问servlet时,服务器将启动一个线程来响应。

web服务器中的servlet被请求访问时,此servlet被加载到Java虚拟机中,在servlet中要接受HTTP请求并做相应处理。

1.2 servlet的生命周期

生命周期有以下三个部分:

(1)servlet初始化,servlet是一个类,当第一次客户端被请求时,web服务器引擎首先生成这个类的对象,并加载这个对象,通过这个对象的init() 方法完成初始化的工作。

(2)生成的servlet类的对象调用service() 方法来响应请求。

(3)servlet类的对象自第一次生成后常驻内存直到web服务器关闭。再次请求时,从内存中取出对象响应请求,web服务器被关闭,将调用servlet对象的destroy()方法消除对象。

注:init() 方法只会在第一次请求时被调用一次,只被调用一次。service()方法在每次servlet被请求时都会被执行。


2、怎么部署servlet

如果是在eclipse里面编辑servlet的话,要先设置tomcat的路径。

找到tomcat的安装目录,在我的电脑——属性——高级设置——环境变量里面,在系统变量classpath后面这样设置:d:\tomcat7\lib\servlet-api.jar

在src里面你新建一个包,然后新建class文件,在calss文件里面编辑你的servlet。

这是编辑的一个servlet实例:

package userPage;

import java.io.*;
import java.util.Date;
import javax.servlet.*;
import javax.servlet.http.*;

//import jdk.nashorn.internal.ir.RuntimeNode.Request;

public class TestServlet extends HttpServlet {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		//super.doGet(req, resp);
		doPost(req,resp);
	}
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		//super.doPost(req, resp);
		System.out.println("收到一个请求消息是:"+new Date());
	}
}

类编译后,要将字节码文件.classs复制到当前的“WEB-INF\classes”文件夹下,但是eclipse里面的classes文件夹没有在WEB-INF目录下面,实际上是在build那个文件夹里面,你可以在工作区间里面查到里面的classes文件夹,里面有已经生成的.class文件。

然后接下来,要配置web.xml文件,这个文件是在WEB-INF目录下的,可能有人发现这个文件也没有。

问题是你在新建web project时没有选择默认创建该文件,在新建的时候选上就好了。







接下来,点开web.xml在里面进行配置。

 
<web-app>
<servlet>
  <servlet-name>FirstServlet</servlet-name>
  <servlet-class>userPage.FirstServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>FirstServlet</servlet-name>
  <url-pattern>/FirstServlet</url-pattern>
  </servlet-mapping>
</web-app>

web.xml其实就是servlet的一个配置文件,通过这个配置文件来寻找对应的servlet处理业务

到这里就设置完成了,运行一下。

记得启动tomcat服务器。

输入地址:http://localhost:8080/userPage/TestServlet

运行结果如下:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值