Servlet-基本概念

一、概念

根据百度百科:Servlet(Server Applet)是Java Servlet的简称,是用Java编写的服务器端程序,主要功能在于交互式地浏览和生成数据,生成动态Web内容。

加深理解

  • 上面提到的Web内容我们很好理解:一段文本,一张图片,一个视频都是Web内容,说白了就是Web网页所展示的内容。
  • 而什么是动态呢?动态是相对静态的,静态资源指的是所有用户看到的都是一样的资源,比如写在html标签里的一段话,用<img>标签包裹的一张图片。而动态资源是指不同的用户看的内容不一样的资源。比如登录CSDN后,展示的用户头像,你的收到的个人消息,你发表的文章,你收到的赞等等。

而Servlet就是一门服务端的动态Web资源开发技术,它对用户的请求会响应动态的内容。

二、再理解

Servlet是Java EE规范之一,而规范就是接口。实现一个Servlet类,为用户提供动态资源响应,实际上就是实现一个Servlet接口并运行。

三、快速使用

Servlet的快速使用非常简单,只需要完成以下三步。五分钟便可在浏览器访问你的Servlet。

  • 引入Servlet依赖
  • 实现Servlet接口
  • 添加Servlet注解

(1)引入依赖

注意这里的scope要填写为provided。该含义是仅在编译与测试时生效,在运行时不生效。因为Servlet需要运行在Web服务器(如Tomcat),而Web服务器中已引入了这个依赖,所以会导致依赖冲突。

<!-- 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>

(2)实现Servlet接口,覆盖以下五个方法即可。可以在service方法中写一段输出,将来调用这个Servlet时,将会调用service方法

(3)添加注解@WebServlet,其中添加访问路径。


import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import java.io.IOException;

@WebServlet("/hello")
public class ServletDemo implements Servlet {

    @Override
    public void init(ServletConfig servletConfig) throws ServletException {

    }

    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("hello servlet!");

    }

    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void destroy() {

    }
}

(3)访问该地址,则会发现控制台会打印service方法中的输出内容。这青蛙service方法被调用了。

四、思考

service方法是被谁调用的呢,其它方法又有什么作用呢?请读者继续阅读Servlet的执行流程。我们知道每次实现一个Servlet,都需要覆盖五个接口,是否存在更简便的方法呢?请继续阅读文章Servlet体系结构,了解更快速实现一个Servlet类的方法。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值