zoukankan      html  css  js  c++  java
  • 关于Servelet在Tomcat中执行的原理

    问题描述:

    servelet接口的实现类在在部署在Tomcat项目中,但是我们并没有创建实现类的相关具体事例为什么,实现类里面的方法会执行呢?

    解决办法:

    • 当我们实现了Servelet接口,并且把类部署到web容器(Tomcat服务器)中的时候,我们还需要在web.xml的配置文件中配置Servelet实现类的相关映射:

    • 当我们访问这个资源的时候:

     我们通过上面的地址找到部署在Tomcat下的/hui项目,然后通过/serveletdemo这个资源路径会在配置文件web.xml中寻找有没有相对应的

    <url-pattern>/serveletdemo</url-pattern>标签:

    •  然后Tomcat会根据这个全类名将对应的字节码文件加载进内存
    • 然后再通过Class.forName("com.yfsn.ServeletDemo")反射的方式获得类对象
    • 再获得构造器调用invoke();方法执行。
    • (Servelet3.0以后就支持注解配置资源路径的方式了)

     但是Servelet的创建时机并不只是在有用户访问时才创建这一种情况,关于Servelet的创建时机,在另一篇中讲述。

    迎风少年
  • 相关阅读:
    python_接口基础知识
    python_基础总结
    python_配置文件_yaml
    python_loggin日志处理
    python_数据驱动_ddt
    python_unittest_单元测试_openpyxl
    python_类与对象总结_继承
    python_路径操作及类和对象
    python_导包
    Codeforces Round #655 (Div. 2) B. Omkar and Last Class of Math
  • 原文地址:https://www.cnblogs.com/ZYH-coder0927/p/13661073.html
Copyright © 2011-2022 走看看