Servlet基础

这篇具有很好参考价值的文章主要介绍了Servlet基础。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

快速入门

创建maven web项目,导入Servlet依赖坐标:

   <dependencies>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>

        </dependency>
    </dependencies>

同时在pom.xml文件里配置tomcat插件:
 

 <build>
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <!--                    端口号-->
                    <port>9090</port>
                    <!--                    访问路径-->
                    <path>/</path>
                </configuration>
            </plugin>
        </plugins>
    </build>

创建一个类,实现Servlet接口,重写方法(service),添加访问路径:

package org.example;

import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import java.io.IOException;
@WebServlet(value = "/demo1")//访问路径
public class demo1 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("Servlet成功访问..");
    }

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

    @Override
    public void destroy() {

    }
}

如果成功访问Servlet,控制台输出service方法下的信息。

运行并访问路径:

Servlet基础

 此时控制台输出:

Servlet基础

 

   Servlet由Web服务器创建,由Web服务器调用。

生命周期

加载和实例化:默认情况,Servlet第一次被访问,有容器创建Servlet对象;

初始化:实例化之后,容器调用init初始化对象,完成一些配置工作,该方法只使用一次;

请求处理:每次请求Servlet,容器都会调用service方法对请求进行处理;

服务终止:当需要释放内存或容器关闭时,容器会调用service方法完成资源释放。

新建一个类,完成下列方法:

package org.example;

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

@WebServlet(value = "/demo2")//访问路径
public class demo2 implements Servlet {
    /**
     * 初始化方法 默认情况下第一次被访问调用 只调用一次
     * @param servletConfig
     * @throws ServletException
     */
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        System.out.println("初始化..");


    }

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

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("Servlet成功访问..");
    }

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

    @Override
    public void destroy() {
        System.out.println("销毁中..");

    }
}

运行服务器..

第一次访问,控制台输出,同时调用service方法:

Servlet基础

第二次访问,控制台输出:

Servlet基础 

这里init方法只调用一次,可以使用

* loadOnStartup:控制次此方法调用的时机

Servlet基础

 重新启动服务器,控制台输出:

Servlet基础

 关闭服务器,控制台输出:

Servlet基础

XML配置Servlet

Servlet从3.0以后开始支持注解配置,3.0版本只支持XML配置文件的配置方式

编写Servlet类:

package org.example;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class demo0 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("get..");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("post..");
    }
}

在web.xml配置Servlet:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">


    <!--    Servlet全类名-->
    <servlet>
        <servlet-name>demo0</servlet-name>
        <servlet-class>org.example.demo0</servlet-class>
    </servlet>


    <!--    Servlet访问路径-->
    <servlet-mapping>
        <servlet-name>demo0</servlet-name>
        <url-pattern>/demo0</url-pattern>
    </servlet-mapping>
</web-app>

启动tomcat服务器,开启访问:

Servlet基础

控制台输出:

Servlet基础 

 部分代码:文章来源地址https://www.toymoban.com/news/detail-401528.html

部分代码https://gitee.com/Rkun18/javaweb-demo/tree/master/web-demo

到了这里,关于Servlet基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Maven基础的快速入门

    概念:Maven是apache旗下的一个开源项目,是一款用于管理和构建Java项目的工具 Maven的作用: 1.依赖管理:放便快捷的管理项目依赖的资源(jar包),避免版本冲突的问题 2.统一项目结构:提供标准、统一的项目结构 3.项目构建:标准跨平台(Linux、windows、MacOS)的自动化项目

    2024年02月10日
    浏览(31)
  • Maven基础之项目创建、packaging

    通过骨架(archetype)创建 maven 工程 第一步 :选择 new → maven → Maven Project 第二步 : New Maven Project 窗口不作任何设置,直接 Next 。 第三步 :选择 maven 的工程骨架,这里我们选择 quickstart ,点击 Next 。 第四步 :输入 GroupId 、 ArtifactId 、 Version 、 Package 信息点击 finish 完成。

    2024年02月15日
    浏览(28)
  • 2. 使用IDEA创建Spring Boot Hello项目并管理依赖——Maven入门指南

    前言:本文将介绍如何使用IDEA创建一个Spring Boot Hello项目,并通过Maven来管理项目的依赖。我们从项目的创建到代码的编写,再到项目的构建和运行,一步步演示了整个过程。 🚀 作者简介:作为某云服务提供商的后端开发人员,我将在这里与大家简要分享一些实用的开发小

    2024年02月10日
    浏览(59)
  • springboot基础篇(快速入门 + 完整项目案例)

    SpringBoot程序优点: 起步依赖(简化依赖配置) parent 所有SpringBoot项目要继承的项目,定义了若干个坐标版本号(依赖管理,而非依赖),以达到减少依赖冲突的目的 自动配置(简化常用工程相关配置) stater SpringBoot中常见项目名称,定义了当前项目使用的所有依赖坐标,以

    2024年02月11日
    浏览(47)
  • Servlet执行原理和API详解---【创建Servlet项目】

    目录 一、Servlet 是什么? 主要工作: 第一个Servlet项目: 编写代码 打包程序 Servlet 是一款基于HTTP协议,用来开发Java Web,运行在Tomcat里面的里的框架技术。 一种实现动态页面的技术 . 是一组 Tomcat 提供给程序猿的 API, 帮助程序猿简单高效的开发一个 web app. 主要工作: 1.建立

    2024年02月10日
    浏览(43)
  • Maven项目,本地jar包导入手动导入到Maven库中

    当你的项目,由于网络或者环境这些问题,无法从maven中央仓库更新jar包到本地的时候,可以尝试下面方法,手动添加jar包到Maven仓库; 方法一(推荐): 1、需要先拿到你的jar包,copy到本地。例如我的就是hutool-all-5.8.20.jar 2、执行mvn命令,由于本人平时用idea开发,没有配置

    2024年02月12日
    浏览(45)
  • SpringBoot学习——追根溯源servlet是啥,tomcat是啥,maven是啥 & springBoot项目初步,maven构建,打包 & 测试

    1.追根溯源,servlet是啥,tomcat是啥,maven是啥; 2.前后端开发模式,mvc,mvvc,service层的事务; 3.maven对项目全生命周期的管理,打包jar包和运行; 4.springBoot项目的搭建,pom文件,项目结构,项目环境; 5.Druid连接数据库,管理连接,springBootApplication的exclude; 6.banner.text的使用

    2024年02月13日
    浏览(49)
  • 创建一个简单的 Servlet 项目

    目录 1.首先创建一个 Maven 项目 2.配置 maven 仓库地址 3.添加引用 4.配置路由文件 web.xml 5.编写简单的代码 6.配置 Tomcat 7.写入名称,点击确定即可 8.访问 1.首先创建一个 Maven 项目 2.配置 maven 仓库地址 3.添加引用 https://mvnrepository.com/ 中央仓库地址 搜索 Servlet 添加框架引用到 pom.

    2024年02月15日
    浏览(43)
  • <Maven>项目依赖导入Maven本地仓库命令

    项目工程pom.xml文件打开:查看报错的依赖, 将jar包放在D盘(或者其它路径都可)根目录下,在windows黑窗口执行以下命令; 举例:jar包名称: 1.api-1.0-SNAPSHOT102.jar 2.coms-cache-1.0-SNAPSHOT.jar 命令:

    2024年02月14日
    浏览(39)
  • Maven项目导入本地依赖

    今天在打包一个javafx项目时,因为有一个jar包在mvn本地仓库和网上仓库都没有,所以打包后程序功能不完整,CSDN上看了一堆,都是介绍了一堆方法但每个方法都不太详细,唉...还是自己来吧  mvn语法格式 (我也是刚刚学会,会这一句就行,用的时候再学) 注意: 【】内是需要

    2024年02月04日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包