栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

servlet的概述

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

servlet的概述

Servlet(javaEE 、javaWEB)

servlet -----> server + applet
意为用java编写的服务器端程序

它运行在web服务器中,web服务器负责Servlet和客户的通信以及调用Servlet方法,Servlet和客户通信采用“响应/请求”的模式。

web开发的流程图:

Servlet的作用:
● 接受用户发送的请求
● 调用其他的java程序来处理请求
● 根据处理结果,服务器将响应返回给客户端

一般情况下javaweb中将架包都是放在的WEB-INF中的lib包里
右键选中所要的架包,然后选择Add as Library… 选项


重写父类的方法


构造方法
只被执行一次,只创建了一个对象,此对象由服务器创建的,
默认是在客户端第一次访问该servlet时创建servlet对象

init()方法
初始化
当servlet对象创建后,服务器会自动调用init()方法
完成一些初始化操作
init中加载时就拿到配置文件中的servlet的参数数据
如果我们没有需要初始化的操作,也可以是不用重写的,但是服务器依然会调用,调用父类的init()

service()方法
服务
为请求提供服务,每一次HTTP请求都会调用service(请求对象,响应对象)

destroy()方法
销毁
当servlet这个对象销毁的时候,服务器会调用destroy(),
让我们完成一些最终的操作,(例如保存日志…)
如果没有请求的话,这个方法也是可以不用写的,但是依然会调用,调用父类的destroy

页面执行时调用这个servlet中的语句

package com.student.firstweb.servlet;

import javax.servlet.ServletConfig;
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 DemoServlet extends HttpServlet {
    //    构造方法,初始化对象
    //    只被执行一次,只创建了一个对象,此对象由服务器创建的,
    //    默认是在客户端第一次访问该servlet时创建servlet对象
    //    0当在配置文件中值>=0时,会在服务器启动时加载
    //                                        默认情况下值=-1
    public DemoServlet() {
        System.out.println("DemoServlet构造方法");
    }

    //    初始化
    //    当servlet对象创建后,服务器会自动调用init()方法
    //    完成一些初始化操作
    //    0当在配置文件中值>=0时,会在服务器启动时加载
    //                                        默认情况下值=-1
    //    init中加载时就拿到配置文件中的servlet的参数数据
    //    如果我们没有需要初始化的操作,也可以是不用重写的,但是服务器依然会调用,调用父类的init()
    @Override
    public void init(ServletConfig config) throws ServletException {
        System.out.println("init");
        config.getInitParameter("name");    //通过这个方法就可以拿到配置文件中的信息
    }

    //    服务
    //    为请求提供服务,每一次HTTP请求都会调用service(请求对象,响应对象)
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("service");
    }

    //    销毁
    //    当servlet这个对象销毁的时候,服务器会调用destroy(),
    //    让我们完成一些最终的操作,(例如保存日志....)
    //    如果没有请求的话,这个方法也是可以不用写的,但是依然会调用,调用父类的destroy
    @Override
    public void destroy() {
        System.out.println("destroy");
    }
}

.xml配置文件如下:



    
    
    
    
        demo
        
        com.student.firstweb.servlet.DemoServlet
        
        
            name
            tom
        
        
        
        0
    


    
    
        demo
        
        /demourl
    




    
    我的第一个web程序


列表
账号: 密码:

页面发起请求,通过.xml访问到服务器中,调用到服务器中应调用到的代码。

只有第一次调用时才会调用init函数,在之后的买一次调用时,只访问到service函数,关闭服务器最后才会调用这个destroy函数

打开服务器中时,默认调用的MTML页面是默认为index.html网页页面

servlet的生命周期

1、实例化
构造方法:只被调用一次,只有第一次访问Servlet时或服务器启动时创建Servlet实例
2、初始化
init方法:只被调用一次,在Servlet实例创建好实例后立即执行,用于执行一些初始化Servlet的操作
3、服务
service方法:多次调用,每次请求都调用service方法,根据请求方式调用doGet()或doPost()方法。
4、消亡
destroy方法:只被调用一次,在服务器关闭时调用,执行一些操作。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/320886.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号