Servlet详解(上)

简介: Servlet详解

一. Servlet介绍


1.1 概念

Servlet 是一种实现动态页面的技术. 是一组 Tomcat 提供给程序猿的 API, 帮助程序猿简单高效的开发一个 web app,使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页;


2.2 Servlet架构

a3588119a47947b790013ee4f784b607.png


二. 创建一个Servlet程序

一般创建一个简单的 Servlet 程序需要一下几个步骤:


2.1 创建一个Maven项目

8d1b747fa39242c89bb794f76cec4332.png


2.2 引入 jar 包

打开创建好的Maven工程,点击pro.xml文件,我们需要去中央仓库去引入相对应的依赖,可以去官网复制相应的代码,点击这个网址直接跳转到中央仓库:


https://mvnrepository.com/

https://mvnrepository.com/

f288488494de48d2920db43dcab64639.png


97ce97c0143d4376a4773f160785492b.png

注意:这里要选择3.1.0的版本,因为这个版本是和 Tomcat8.5 相匹配的,不同的Servlet就要对应不同的Tomcat;


<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
    <scope>provided</scope>
</dependency>

7f99003627214279a74b05b71ed1ff85.png

把这段代码复制粘贴到Maven工程的pro.xml文件里就OK了,这里需要新增一个<dependencies>标签,这样IDEA就会自动识别并且下载相对应的jar包了;


2.3 创建目录

在main的目录下创建一个webapp的目录,在此目录下创建一个WEB-INF目录,在WEB-INF目录下创建web.xml文件,这里的文件目录和文件名字要保证正确;创建好之后在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>

7e0d97850c5c454e83737e89d4bc5fb6.png

2.4 编写代码


@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
    // 这里的rep是HTTP请求,resp是HTTP响应
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html;charset=utf8");
        resp.getWriter().write("hello world");
        resp.getWriter().write("你好 世界");
    }
}

2.5 打包程序

打包做的事情有:

  1. 检查代码中是否存在一些依赖,依赖是否下载好;
  2. 把代码进行编译,生成.class文件;
  3. 把这些.class文件或者.xml文件按照一定格式进行打包;

这里我们双击package,同时我们要在pom.xml文件中插入相应代码,来调整打包生成的格式,如果双击package打出来的包就是jar包,但是我们需要的war包;


// 指定打包格式
<packaging>war</packaging>
    <build>
// 生成包的名字
        <finalName>helloServlet</finalName>
    </build>

e4372d6366f14429b312557668f2dc9b.png

这里我们看见就打包成功了;


2.6 部署程序

我们需要把打好的war包移到 tomcat 的webapp目录下

601a3243ca344f9195542eab15723b46.png


ec2d216b6324449c9b80ade09b4d5efd.png


2.7 验证程序

这里我们需要再IDEA上安装一个Smart Tomcat,安装的过程就不细说了,安装完成后,点击运行,在浏览器输入url,localhost:8080/servlet/hello,就可以看到你想显示的东西了;

3870ed705e294c0684108037c6e253de.png

但是要正确启动一个servlet程序,还需要注意一下路径的问题,否则就会启动失败:

8110413d6dff49a2ae4efa929c8774bd.png


目录
相关文章
|
1月前
|
SQL 监控 安全
Servlet详解
Servlet 是运行在服务端的小程序,用于处理客户端请求并返回响应,是构建动态Web应用的基础。其生命周期包括加载初始化(`init()`)、请求处理(`service()`)和销毁(`destroy()`)。Servlet默认懒加载且单例,需注意线程安全。此外,Servlet生态还包括过滤器(Filter)、监听器(Listener)、异步处理及文件上传下载等功能,支持更复杂的应用场景。过滤器可预处理请求和响应,监听器监控对象生命周期事件,异步处理提升性能,文件上传下载提供便捷的API支持。
53 10
|
9月前
|
Java 应用服务中间件 数据库连接
Servlet是什么?
Servlet(Server Applet)是Java Servlet的简称,通常被称为小服务程序或服务连接器。它是一个用Java编写的服务器端程序,具有独立于平台和协议的特性。Servlet的主要功能在于交互式地浏览和生成数据,进而生成动态Web内容。
76 3
|
IDE Java 应用服务中间件
Servlet3.0
Servlet3.0
|
9月前
|
XML 前端开发 Java
servlet使用
servlet使用
|
Java 应用服务中间件
Servlet2(1)
Servlet2(1)
77 0
|
JSON 前端开发 Java
Servlet详解(下)
Servlet详解
93 0
|
XML JavaScript 前端开发
servlet详解
servlet详解
|
存储 缓存 网络协议
Servlet(一)
关于Servlet的相关介绍
275 0
Servlet(一)
Servlet(三)
关于Servlet的相关介绍
152 0
Servlet(三)
|
Java 容器
servlet
servlet相关类包括Servlet、ServletConfig、ServletContext、GenericServlet、HttpServlet等。 Servlet Servlet定义了所有servlet必须实现的功能,每一个Servlet都是运行在web服务中的一个小的java程序,用于接收并响应来自web客户端的请求。
847 0

相关课程

更多