Servlet的使用与部署

目录

Servlet概念

创建一个Servlet程序

1、创建项目

2、导入依赖 

        3、创建目录  

4、编写代码

5、打包程序

6、部署程序

7、验证程序


Servlet概念

        Servlet 是一种实现动态页面的技术 . 是一组 Tomcat 提供给程序猿的 API, 帮助程序猿简单高效的开发一个 web app.
Servlet 主要做的工作:
  • 允许程序猿注册一个类, Tomcat 收到某个特定的 HTTP 请求的时候, 执行这个类中的一些代码.
  • 帮助程序猿解析 HTTP 请求, HTTP 请求从一个字符串解析成一个 HttpRequest 对象
  • 帮助程序猿构造 HTTP 响应 . 程序猿只要给指定的 HttpResponse 对象填写一些属性字段 , Servlet就会自动的安装 HTTP 协议的方式构造出一个 HTTP 响应字符串 , 并通过 Socket 写回给客户端 .

创建一个Servlet程序

1、创建项目

使用 IDEA 创建一个 Maven 项目 .
        1. 菜单 -> 文件 -> 新建项目 -> Maven

2、导入依赖 

        Maven 项目创建完毕后 , 会自动生成一个 pom.xml 文件, 我们需要在 pom.xml 中引入 Servlet API 依赖的 jar .

        在Maven中央仓库https://mvnrepository.com/ 搜索Servlet进行下载

选择下载的servlet api包的版本

Servlet 的版本要和 Tomcat 匹配 .
可以在 http://tomcat.apache.org/whichversion.html 查询版本对应关系

把中央仓库中提供的 xml 复制到项目的 pom.xml

 

3、创建目录  

1)在 main 目录下 , java 目录并列 , 创建一个 webapp 目录
2)在刚创建的webapp文件夹下创建文件夹WEB-INF,然后在该文件夹下创建web.xml
3)在web.xml文件里面编写如下代码
<!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>
    <display-name>Archetype Created Web Application</display-name>
</web-app>

4、编写代码

在main目录下创建一个HelloServlet类:

@WebServlet("/hello")  
public class HelloServlet extends HttpServlet {
    @Override 
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("hello Servlet");
        resp.getWriter().write("hello Servlet");
    }
}

  • HttpServletRequest 表示 HTTP 请求。  Tomcat 按照 HTTP 请求的格式把 字符串 格式的请求转成了一个 HttpServletRequest 对象
  • HttpServletResponse 表示 HTTP 响应。 代码中把响应对象构造好 ( 构造响应的状态码 , header, body 等 )
  • resp.getWriter() 会获取到字符流对象 , 通过字符流对象就可以写入一些数据 , 写入的数据会被构造成一个 HTTP 响应的 body 部分 , Tomcat 会把整个响应转成字符串 , 通过 socket 写回给浏览器.

 注意点:

1、我们的代码不是通过 main 方法作为入口了. main 方法已经被包含在 Tomcat 里, 我们写的代码会被 Tomcat 在合适的时机调用起来. 此时我们写的代码并不是一个完整的程序, 而是 Tomcat 这个程序的一小部分逻辑.
2、我们随便写个类都能被 Tomcat 调用嘛? 满足啥样条件才能被调用呢?
主要满足三个条件:
a) 创建的类需要继承自 HttpServlet
b) 这个类需要使用 @WebServlet 注解关联上一个 HTTP 的路径
c) 这个类需要实现 doXXX 方法.
当这三个条件都满足之后, Tomcat 就可以找到这个类, 并且在合适的时机进行调用.

5、打包程序

点击maven->package,就可以打包程序了 

出现以下信息则打包成功 

注意点:如果想要修改打包的压缩包名字,可以在pom.xml文件里面增加如下代码:

<!-- war为tomcat打包压缩包的后缀-->
<packaging>war</packaging>
<!--    hello_servlet为自己想要修改打包压缩包的名字-->
    <build>
        <finalName>hello_servlet</finalName>
    </build>

6、部署程序

war 包拷贝到 Tomcat webapps 目录下, 启动 Tomcat , Tomcat 就会自动把 war 包解压缩

7、验证程序

运行Tomcat文件 :startup.bat ,在浏览器输入运行文件路径,观察结果

猜你喜欢

转载自blog.csdn.net/qq_73471456/article/details/130806610
今日推荐