Servlet上

Posted xuweiweiwoaini

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet上相关的知识,希望对你有一定的参考价值。

1 Servlet简介

  • Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中。Servlet容器负责Servlet和客户的通信以及调用Servlet的方法,Servlet和客户端的通信采用的是“请求/响应”的模式。
  • Servlet可完成如下的功能:
    • ①创建并返回基于客户请求的动态html页面。
    • ②创建可嵌入到现有HTML页面中的部门HTML页面(HTML片段)。
    • ③和其它服务器资源(如数据库和基于Java应用程序)进行通信。  

 

2 Servlet容器响应客户请求的过程

技术分享图片

 

3 第一个Servlet程序

3.1 应用

  • 示例:
package com.xuweiwei.servlet;

import java.io.IOException;

/**
 * @description:
 * @verion:
 * @since:
 * @motto: 不为往事扰,余生最爱笑
 */
public class HelloServlet extends javax.servlet.http.HttpServlet {
    protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
        response.getWriter().print("hello Servlet");
    }

    protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
        this.doPost(request,response);
    }
}
<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>


  <servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>com.xuweiwei.servlet.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>

</web-app>

 

  • 访问地址:http://localhost:8080/hello

 

4 Servlet容器响应客户请求的过程

  • ①Servlet引起检查是否已经装载并创建了该Servlet的实例对象。如果是,则直接执行第④步,否则,就执行第②步。
  • ②装载并创建该Servlet的一个实例对象(调用该Servlet的构造方法)。
  • ③调用Servlet示例的Init方法。
  • ④创建一个用于封装请求的ServletRequest对象和一个代表响应信息的ServletResponse对象,然后调用Servlet的service()方法并将请求和响应对象作为参数传递进去。
  • ⑤WEB应用程序被停止或者重新启动之前,Servlet引擎将装载Servlet,并在卸载之前调用Servlet的destroy方法。

 

以上是关于Servlet上的主要内容,如果未能解决你的问题,请参考以下文章

打造云上代码交付链_CodePipeline实践分享

数据库事务课上代码

更新github上代码

Go语言入门150题L1-065 嫑废话上代码 (5 分) Go语言 | Golang

idea如何远程调试线上代码

使用git 更新线上代码