Java Servlet

1.什么是servlet?

servlet是一种服务器的Java应用程序,即Java服务器小程序,其是由服务器端调用和执行的,按照servlet自身规范编写的Java类。

2.为什么使用servlet

    (1)servlet是持久的

    (2)servlet是快速的

    (3)servlet是与平台无关的

    (4)servlet是可扩展的

    (5)servlet是安全的

3.servlet运行流程

    首先Servlet被部署到Web容器中,当客户端发送调用这个Servlet的请求到达Web容器时,Web容器会先判断所调用的Servlet实例是否存在。如果不存在,就装载当前所调用的Servlet并调用构造方法生成这个Servlet的实例,其次再调用这个实例的init()方法(init()这个方法只会在Servlet初始化的时候调用一次,除非这个Servlet被重新部署)进行初始化,然后新创建一个线程,并在新建线程中调用这个实例的service()方法,service()方法再根据请求的具体类型调用doGet()、doPost()等方法,然后生成动态的回复内容,最后服务器发送回复内容给客户端的浏览器。如果存在,就直接新创建一个线程,并在新建线程中调用这个实例的service()方法,service()方法再根据请求的具体类型调用doGet()、doPost()等方法,然后生成动态的回复内容,最后服务器发送回复内容给客户端的浏览器。当Servlet不再需要使用的时候,比如其所在的Web应用被卸载或Web服务器关闭时,它就会被卸载掉,卸载前调用destory()方法,完成所有相关资源的释放。

4.servlet体系结构

    Servlet API主要由两个Java包组成:

    javax.servlet 在javax.servlet包中定义了Servlet接口及相关的通用接口和类;

    javax.servlet.http 在javax.servlet.http包中主要定义了与HTTP协议相关的

HttpServlet类,HttpServletRequest接口和HttpServletResponse接口;

5.servlet生命周期

在Servlet接口中定义了5个方法,其中3个方法都是由Servlet容器来调用的,容器会在Servlet的生命周期的不同阶段调用特定的方法:init(ServletConfig) —— 负责初始化Servlet对象,只调用一次,初次访问servlet时访问。

service(ServletRquest req, ServletResponse res) ——处理业务逻辑;用户每次访问servlet’都会调用; req获取客户端的信息,res用于向客户端返回信息。

destroy() —— 负责释放Servlet对象占用的资源。 

reload该servlet(webApps)(tomcat页面manager), 

关闭tomcat, 

关机会调用该方法。

6.配置servlet

web项目中的web.xml中配置

<?xml version="1.0"?>

<servlet>

    <servlet-name>TestServlet</servlet-name>

    <servlet-class>test.java.servlet.TestServlet</servlet-class>

</servlet>

<servlet-mapping>

    <servlet-name>TestServlet</servlet-name>

    <url-pattern>/testServlet</url-pattern>

</servlet-mapping>

7.servlet的生命周期

    (1)加载和实例化

    (2)初始化

    (3)请求处理

    (4)服务终止


阅读更多
上一篇jsp隐式对象之输入和输出对象
下一篇JAVA中xml与dom解析
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭