赞
踩
Spring是一种轻量级开源框架,以IOC(控制反转)和AOP(面向切面编程)为内核。IOC提供了一个容器,可以管理应用程序中的对象(称为Bean),并提供了一套丰富的功能,如依赖注入、面向切面编程、事务管理等。Spring框架可以用于构建任何类型的Java应用程序,包括Web应用程序、桌面应用程序和批处理应用程序等。
Spring MVC:Spring MVC是Spring框架的一部分,用于构建Web应用程序。它提供了一个基于MVC(模型-视图-控制器)模式的Web框架,用于处理Web请求和响应。Spring MVC通过将请求映射到相应的处理器方法,并使用视图来呈现响应,使得构建Web应用程序变得简单和灵活。
Spring Boot:Spring Boot是一个用于简化Spring应用程序开发的框架。它提供了自动配置和约定优于配置的原则,使得开发者可以快速搭建和运行独立的、生产级别的Spring应用程序。Spring Boot内置了许多常用的第三方库和框架,简化了配置和部署过程。它还提供了一组用于开发Web应用程序、RESTful服务和微服务的起步依赖项。
三者之间的关系:
1)层次关系:
2)依赖关系:
Spring是基础框架,Spring MVC是构建在Spring之上的Web框架,而Spring Boot是构建在Spring和Spring MVC之上的简化开发框架。使用Spring Boot可以快速搭建和运行独立的、生产级别的Spring应用程序,并利用Spring和Spring MVC的功能来实现各种应用需求。
Spring是底层的基础,Spring MVC是构建在Spring之上的主体结构,而Spring Boot是在整个体系基础上提供了更高级的便利和效率。就像建筑物一样,这三者相互依赖,共同构成了一个完整的应用程序框架。
为什么开发使用SpringBoot?
SpringBoot有很多优点:
一、独立运行
Spring Boot而且内嵌了各种servlet容器,Tomcat、Jetty等,现在不再需要打成war包部署到容器中,Spring Boot只要打成一个可执行的jar包就能独立运行,所有的依赖包都在一个jar包内。
二、简化配置
spring-boot-starter-web启动器自动依赖其他组件,简少了maven的配置。
三、自动配置
Spring Boot能根据当前类路径下的类、jar包来自动配置bean,如添加一个spring-boot-starter-web启
动器就能拥有web的功能,无需其他配置。
四、无代码生成和XML配置
Spring Boot配置过程中无代码生成,也无需XML配置文件就能完成所有配置工作,这一切都是借助于条件注解完成的,这也是Spring4.x的核心功能之一。
谈谈对IOC和AOP的理解
IOC有两个概念,控制反转和依赖注入
控制反转:是⼀种设计思想,将对象的创建和管理交给IOC容器完成,从⽽降低对象之间的耦合性,提⾼代码的可维护性和可扩展性。
依赖注⼊:IOC容器在运⾏期间,可以通过配置文件或注解来描述对象之间的依赖关系,而不需要修改代码,从⽽实现对象之间的解耦,通过依赖注⼊,可以将代码中的依赖关系从代码中移除,提高代码的灵活性和可维护性。
AOP:⾯向切⾯编程,通过对业务逻辑的各个部分进⾏隔离从⽽实现解耦,是通过预编译和动态代理实现程序功能的统⼀维护的⼀种技术。
底层原理:通过代理模式实现,会在运⾏时动态创建⼀个代理对象,代理对象包装了原始对象,拦截了对原始⽅法的调⽤。当某个⽅法被调⽤时,代理对象会执⾏额外的逻辑,再将控制权交给原始对象来完成实际的业务逻辑
描述一下SpringMVC的执行流程
未完待续...
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。