学习java第四十一天

Spring MVC运行流程:

第一步:发起请求到前端控制器(DispatcherServlet)

第二步:前端控制器请求HandlerMapping查找 Handler( 可以根据xml配置、注解进行查找)

第三步:处理器映射器HandlerMapping向前端控制器返回Handler

第四步:前端控制器调用处理器适配器去执行Handler

第五步:处理器适配器去执行Handler

第六步:Handler执行完成给适配器返回ModelAndView

第七步:处理器适配器向前端控制器返回ModelAndView(ModelAndView是springmvc框架的一个底层对象,包括Model和view)

第八步:前端控制器请求视图解析器去进行视图解析(根据逻辑视图名解析成真正的视图(jsp))

第九步:视图解析器向前端控制器返回View

第十步:前端控制器进行视图渲染( 视图渲染将模型数据(在ModelAndView对象中)填充到request域)

第十一步:前端控制器向用户响应结果

Spring 框架中都用到了哪些设计模式?

工厂模式:BeanFactory就是简单工厂模式的体现,用来创建对象的实例;

单例模式:Bean默认为单例模式。

代理模式:Spring的AOP功能用到了JDK的动态代理和CGLIB字节码生成技术;

模板方法:用来解决代码重复的问题。比如. RestTemplate, JmsTemplate, JpaTemplate。

观察者模式:定义对象键一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知被制动更新,如Spring中listener的实现---ApplicationListener。

相关推荐
qq_386322692 小时前
华为网路设备学习-32(BGP协议 七)路由反射器与联邦
网络·学习
萘柰奈2 小时前
Unity学习----【进阶】Addressables(二)--加载资源与打包及更新
学习·unity
坐吃山猪3 小时前
SpringBoot01-配置文件
java·开发语言
晚风(●•σ )3 小时前
C++语言程序设计——06 字符串
开发语言·c++
我叫汪枫4 小时前
《Java餐厅的待客之道:BIO, NIO, AIO三种服务模式的进化》
java·开发语言·nio
Nicole-----4 小时前
Python - Union联合类型注解
开发语言·python
晚云与城4 小时前
今日分享:C++ -- list 容器
开发语言·c++
yaoxtao4 小时前
java.nio.file.InvalidPathException异常
java·linux·ubuntu
兰雪簪轩4 小时前
分布式通信平台测试报告
开发语言·网络·c++·网络协议·测试报告
liliangcsdn5 小时前
Leiden社区发现算法的学习和示例
学习·数据分析·知识图谱