Servlet原理介绍

Servelt:server applet

本质就是一个接口(规则),定义了java类被服务器访问到(Tomcat识别)的规则。
我们必须写一个类来实现servlet的方法。

快速入门步骤

1.创建JavaEE(企业级)的项目
2.写一个类实现servlet的方法
3.配置servlet

其中配置servlet在web.xml中配置

<servlet>
        <servlet-name>demo1</servlet-name>
        <servlet-class>web.servlet.ServletDemo1</servlet-class>//全类名
    </servlet>

    <servlet-mapping>
        <servlet-name>demo1</servlet-name>
        <url-pattern>/demo1</url-pattern>//虚拟路径名
    </servlet-mapping>

执行原理

1.当服务器接收到浏览器请求,解析URL路径,获取访问Servlet的资源路径
2.查找web.xml,是否有对应的 <url-pattern>
3.如果有找到对应的全类名
4.Tomcat会将对应的类的字节码文件加载进内存,并创建其对象,并调用方法(因为对象一开始并没有被创建出来,需要通过反射机制)

生命周期

主要是init service destory 三个方法
其中init启动分为两种
load-on-startup中进行配置: 1.第一次访问时候被创建(值为负数)2.服务器启动时候被创建(值为正数)

因为servlet的init只会执行一次,因此是单例模式。当多用户访问时候会产生线程不安全。解决:尽量在servlet中不要定义成员变量,多定义局部变量。即使定义了成员变量也不要对其赋值。

配置

Servlet3.0之后可以不使用web.xml进行配置,可以在类上使用注解@WebServlet进行配置。
例如:@WebServlet( “虚拟路径”)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值