java后端-servlet超详细入门

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

java后端介绍

今天我正式开始了一个新话题那就是 Web。目前我主要会介绍后端。作为后端的老大哥 java也有很多后端框架比如大家耳熟能详的 spring 等。今天来带大家入门 servlet不管是学生刚毕业或是已经工作自学编程的人群都能看懂。

准备工作

目前我们使用的服务器是 Tomcat大家可以先安装 Tomcat这一步网上有很多教程我不再说了。然后还需要下载 idea配置 Tomcat 和 jdk这些网上都有如果配置遇到问题可以私信我。

Servlet项目创建

大家先用idea 创建 web 项目创建好后应是这样。

现在在你的 src 目录下创建一个package并命名为 com.xxxx.servlet。

然后在这个包下面创建一个 java类名叫 servlet你也可以自己起名字

Servlet的基础使用

导入包

package com.xxxx.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

主要是导入了 servlet 的基本方法。

创建 java 类并继承自HttpServlet 类

因为我们后面还要重写 HttpServlet 类中的方法所以要继承这个类。

public class servlet extends HttpServlet{

}

重写 service 方法

因为我们要处理请求所以要重写服务类来处理请求否则处理不了请求。

@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    }

设置访问路径

@WebServlet("/servlet01")

这行代码加在类前面这样我们就可以通过 /servlet01 路径来访问。

内容

这里我们在控制台idea下面和网页浏览器访问里分别打印一句话 "Hello Servlet"

System.out.println("Hello Servlet");
//通过流输出内容
resp.getWriter().write("Hello Servlet");

实例完整代码

package com.xxxx.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/*
* 实现 Servlet
* 1.创建 web 项目配置 Servlet 和 Tomcat
* 2.创建普通 Java 类
* 3.继承 HttpServlet 类
* 4.重写 service 方法(处理请求,Ctrl+o,选择倒数第二个钥匙的)
* 5.处理请求
* 6.设置注解指定访问路径
* 7.配置见https://blog.csdn.net/Samzz33/article/details/116311106
* */
@WebServlet("/servlet01")
public class servlet extends HttpServlet{
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        super.service(req, resp);
        //打印内容在控制台
        System.out.println("Hello Servlet");
        //通过流输出内容
        resp.getWriter().write("Hello Servlet");
    }
}

运行

点击 idea 右上角运行图标

然后 idea 会打开 http://localhost:8080/servlet_war_exploded/

但是你看不到任何内容因为你没有访问你刚才设置的路径。

访问 http://localhost:8080/servlet_war_exploded/servlet01

你会看到

这就成功了

servlet的生命周期

类加载->实例化->服务->销毁

类加载

类加载在服务器启动时就执行一次一个生命周期只执行一次。

实例化

开始生命周期时服务器判断有没有实例化如果没有则实例化。

写一个函数 init()在实例化时执行。

@Override
    public void init() throws ServletException {
        System.out.println("Servlet被创建");
    }

当实例化是会在控制台输出文字。

服务

当收到请求就开始服务一个生命周期执行多次。

@Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("Servlet被调用");
    }

销毁

一个生命周期执行一次在服务器停止时执行也就是你停止运行程序时。

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

完整代码

package com.xxxx.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;


/*
* Servlet生命周期: 类加载->实例化->服务->销毁
* */
@WebServlet("/servlet02")
public class servlet02 extends HttpServlet{
    /*
    * 一个生命周期只执行一次服务器判断是否存在不存在则创建实例自动调用
    * */
    @Override
    public void init() throws ServletException {
        System.out.println("Servlet被创建");
    }

    /*
    * 服务方法自动调用当接收到请求就会调用该方法可以被多次调用
    * */
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("Servlet被调用");
    }

    /*
     * 一个生命周期只执行一次服务器停止时运行该方法
     * */
    @Override
    public void destroy() {
        System.out.println("Servlet被销毁");
    }
}

最后

这篇文章介绍了 servlet 的入门后面会继续更新servlet拜拜~

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Java

“java后端-servlet超详细入门” 的相关文章