spring
- Spring通过控制反转-ioc、切面编程-aop,实现分层的java开发框架。
- Spring将java bean统一管理统一维护。早期通过xml配置实现,Spring解析xml配置文件并通过工程模式+反射生产bean;后期推荐通过纯java注解的方式生产bean。
- 依赖注入,是指bean创建过程中创建并注入所依赖的类。
- spring注重的是类的管理这个层面,简化了对象构造,解藕了类直接的依赖,所以从ssh、ssm到springboot都是核心组成。
springMVC
- 常见mvc框架还有struts2等。
- springMVC围绕DispatcherServlet设计,请求统一由DispatcherServlet分发。
- DispatcherServlet也是一个servlet。
- DispatcherServlet通过HandlerMapper找到对应的controller,controller执行业务逻辑并返回ModelAndView给DispatcherServlet,DispatcherServlet根据视图解析的结果调用具体视图,最后将视图返回给用户。
- springmvc是web mvc一个解决方案,在struts基础上有一定的优化,并且同属spring家族,和spring结合的更好。
springboot
- Springmvc属于spring的mvc解决方案,springboot则是在Spring的基础上构建的简化配置方案,springboot通过spring boot starter统一管理各种依赖和版本,如spring-boot-starter-web包含了springMVC、tomcat。
- springboot将web容器内置,通过web容器的client接口进行配置发布;通过自己的main方法启动,应用独立于web容器就是一个spring程序。
- starter包含:
spring-boot-starter 核心Spring Boot starter,包括自动配置支持,日志和YAML
spring-boot-starter-actuator 生产准备的特性,用于帮你监控和管理应用
spring-boot-starter-web 对全栈web开发的支持,包括Tomcat和 spring-webmvc
spring-boot-starter-aop 对面向切面编程的支持,包括 spring-aop 和AspectJ
spring-boot-starter-data-jpa 对”Java持久化API”的支持,包括 spring-data-jpa , spring-orm 和Hibernate
spring-boot-starter-jdbc 对JDBC数据库的支持
spring-boot-starter-security 对 spring-security 的支持
struts
struts和Springmvc一样都是表示层的架构,struts入口是过滤器,基于类级别,一个接口一个类(action)。Springmvc入口是servlet,基于方法级别。早期struts、spring、hibernate组成的ssh开发框架,后面流行spring、springmvc、mybatis组成的ssm架构。另外,springmvc对于ajax这类Rest api对接更友好,在微服务架构时代就更受欢迎。
spring系列文章:
https://liayun.blog.csdn.net/category_6457009.html
spring boot:
学习书籍:《spring boot编程思想》
系列文章:
https://blog.csdn.net/hemin1003/article/details/82038244?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522160991911716780262052483%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fall.%252522%25257D&request_id=160991911716780262052483&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-4-82038244.pc_search_result_cache&utm_term=Springboot