最近看了一些 Spring 源码,发现源码分析的文章很多,而底层思想分析的文章比较少,这个系列文章准备总结一下Spring中给我的启示,包括设计模式思想、SOLID设计原则等,涉及一些编程的基本原则,虽然看似简单,实则“小道理、大学问”。让人头晕眼花的跳转
我尽量遇到的问题谈起,再说解决方案,同时至少举两个例子。
这些方法都是基于我遇到的一些实际代码,掌握了基本思想,就可以举一反三。
我们随便选择一个方法,比如初始化mvc容器,其必在继承链上的某个类中进行实现,通过分析源码可以看出:虽然执行初始化mvc容器方法需要在继承链上来回跳转,但是其实现了单一职责原则,每一个类负责实现了特定的功能,模板类实现了模板流程,实现类实现具体实现。
initWebApplicationContext在FrameworkServlet中实现。
GenericServlet暴露init方法。
HttpServletBean实现了init方法,在init方法中暴露initServletBean方法。
FrameworkServlet实现initServletBean方法,其中实现了initWebApplicationContext方法。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |