spring框架---简单了解

(59) 2024-04-15 15:01:01

目录

1.springMVC流程

2.spring框架

2.1什么是spring框架

2.2 spring优缺点

2.3为什么使用spring?

2.4如何使用spring?


1.springMVC流程

spring框架---简单了解 (https://mushiming.com/)  第1张

第一步:用户发送请求到前端控制器(DispatcherServlet)。

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

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

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

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

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

第七步:处理器适配器向前端控制器返回 ModelAndView

              ModelAndView 是SpringMVC 框架的一个底层对象,包括 Model 和 View

第八步:前端控制器请求试图解析器去进行视图解析

根据逻辑视图名来解析真正的视图。

第九步:试图解析器向前端控制器返回 view

第十步:前端控制器进行视图渲染

就是将模型数据(在 ModelAndView 对象中)填充到 request 域

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

 

2.spring框架

2.1什么是spring框架

Spring是分层的 Java SE/EE应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。

提供了展现层 SpringMVC 和持久层 Spring JDBCTemplate 以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Java EE 企业应用开源框架。

2.2 spring优缺点

1)方便解耦,简化开发 通过 Spring 提供的 IoC容器,可以将对象间的依赖关系交由 Spring 进行控制,避免硬编码所造成的过度耦合。 用户也不必再为单例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。

2)AOP 编程的支持 通过 Spring的 AOP 功能,方便进行面向切面编程,许多不容易用传统 OOP 实现的功能可以通过 AOP 轻松实现。

3)声明式事务的支持 可以将我们从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活的进行事务管理,提高开发效率和质量。

4)方便程序的测试 可以用非容器依赖的编程方式进行几乎所有的测试工作,测试不再是昂贵的操作,而是随手可做的事情。

5)方便集成各种优秀框架 Spring对各种优秀框架(Struts、Hibernate、Hessian、Quartz等)的支持。

6)降低 JavaEE API 的使用难度 Spring对 JavaEE API(如 JDBC、JavaMail、远程调用等)进行了薄薄的封装层,使这些 API 的使用难度大为降低。

7)Java 源码是经典学习范例 Spring的源代码设计精妙、结构清晰、匠心独用,处处体现着大师对Java 设计模式灵活运用以及对 Java技术的高深 造诣。它的源代码无意是 Java 技术的最佳实践的范例。

 

2.3为什么使用spring?

目的:降低耦合:对象与对象之间的耦合。

2.4如何使用spring?

1.首先创建一个spring工程。

spring框架---简单了解 (https://mushiming.com/)  第2张

 2.添加spring的依赖

spring框架---简单了解 (https://mushiming.com/)  第3张

 3.创建spring.xml文件

spring框架---简单了解 (https://mushiming.com/)  第4张

4.创建实体类Student并添加两个方法

spring框架---简单了解 (https://mushiming.com/)  第5张

5.配置spring。xml的配置文件 。解释一下:这一次操作时为了让spring我们要在哪个类创建对象

spring框架---简单了解 (https://mushiming.com/)  第6张 6.添加测试类,进行测试

spring框架---简单了解 (https://mushiming.com/)  第7张

 测试结果:

spring框架---简单了解 (https://mushiming.com/)  第8张

 可见这里的对象并不是我们自己new的 是有spring给我们创建出来的

  • 控制 : 谁来控制对象的创建 , 传统应用程序的对象是由程序本身控制创建的 , 使用Spring后 , 对象是由Spring来创建的

  • 反转 : 程序本身不创建对象 , 而变成被动的接收对象

 

 

THE END

发表回复