zoukankan      html  css  js  c++  java
  • springboot源码(2)

    在spingboot应用中,我们会经常配置自己的servlet,经常用的方法是在配置类中加入这样的一个bean:

     那么它通过这样注入servlet的一个原理是什么呢?我们打开ServletRegistrationBean这个类:

     它继承了DynamicRegistrationBean这个类,依次打开它们的继承,可以看到ServletRegistrationBean->DynamicRegistrationBean->RegistrationBean->ServletContextInitializer;

    最后的这个ServletContextInitializer接口里面就只定义的onStartup方法,我们打开RegistrationBean里重写的这个方法:

     这里的getDescription返回你注册的组件是servlet、listener还是filter,可看到其实现类分别对应了这3种,其实里面就只是加了对应描述的字符串而已,最后用register,我们打开这个方法:

     这个register方法其实就是DynamicRegistrationBean这个类里的,这里就把我们的组件注册到我们的servletContext中:

     最后configure方法配置我们自己自定义好的servlet:

     这样,我们就让我们自己自定义的servlet成功注入并生效我们自己的配置了;

  • 相关阅读:
    verilog中的function用法与例子
    HDMI IP学习笔记
    include使用中注意的问题
    PCIE学习
    HDMI学习
    (转)modelsim10.0C编译ISE14.7的xilinx库(xilinx ip核)
    2014年七月华为校招机试题目--最难的一道, 呵呵!
    欧拉函数
    素数高效率筛选法
    树-二叉树的编号
  • 原文地址:https://www.cnblogs.com/lzj-learn/p/14431789.html
Copyright © 2011-2022 走看看