Spring和Spring MVC的区别
- Spring是一个一站式的轻量级的Java开发框架,核心是控制反转(IOC)和面向切面(AOP),针对于开发的Web层(Spring MVC)、业务层(IOC)、持久层(jdbcTemplate)都提供了多种配置的解决方案。
- Spring MVC是Spring基础之上的一个MVC框架,主要处理Web开发的路径映射和视图渲染,属于Spring框架中WEB层开发的一部分
Spring MVC和Spring Boot的区别
- Spring MVC属于一个企业WEB开发的MVC框架,涵盖面包括前端试图开发、文件配置、后端接口逻辑开发等,XML、config等配置相对比较繁琐复杂
- Spring Boot框架相对于Spring MVC框架来说,更专注于开发微服务后台接口,不开发前端试图,同时遵循默认优于配置,简化了插件配置流程,不需要配置XML,相对于Spring MVC,大大简化了配置流程
总结
- Spring框架就像一个家族,有众多衍生产品例如Boot、Security、JPA等等。但题目的基础都是Spring的IOC、AOP等。IOC提供了依赖注入的容器,AOP解决了面向横切面编程,然后在此两者的基础上实现了其他延申产品的高级功能
- Spring MVC主要解决WEB开发的问题,是基于Servlet的一个MVC框架,通过XML配置,统一开发前端试图和后端逻辑
- 由于Spring的配置非常复制,各种XML、JavaConfig、Servlet处理起来比较繁琐,为了简化开发者的使用,从而创造性地推出了Spring Boot框架,默认优于配置,简化了Spring MVC的配置流程;但区别于Spring MVC的是,Spring Boot专注于单体微服务接口开发,和前端解耦,虽然Spring Boot也可以做成Spring MVC前后台一起开发,但是这就有点不符合Spring Boot框架的初衷了