springboot-概念及对比

背景

公司统一技术栈,博主转型java,博主几年前从事过java web(ssh) & 安卓开发,所以有一定的底子,奈何时间太久了,忘的差不多了,所以边学习边记录

技术栈对比

基于目前的现状,基本上没什么选择,spring全家桶。早期还有不少基于Struts1&Struts2的项目,但是因为著名的RCE(远程代码执行)漏洞导致大批开发者远离。当然,基于一些历史原因,Struts还是有不少的市场的。

spring系列异同

spring系列的框架有一堆,总是不经意间会被srping、springMVC、SpringBoot ,SpringBoot 这些东西绕晕,它们都是什么?彼此间又是什么关系?

  • spring

spring 是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器,Java 开发框架,spring是为了简化企业级开发的框架,但是实际开发中还是要配置xml文件或者javaconfig文件,并且考虑各个框架之间的融合性

  • springMVC

springMVC主要处理web开发的路径映射和视图渲染,属于spring框架中WEB层开发的一部分。我们可以把spring和mvc分开理解,mvc相信各位开发者都很了解,简言之就是c(控制器)将v(视图)与m(模块业务)分开构成了mvc,spring作为专业的开发web项目的开源框架,springMVC为内部的一个模块环节,同样采取mvc设计模式。 所以在使用spring开发web项目时,作为核心环节的MVC可以使用struts1/struts2/springMVC等

  • springboot

使用spring整合基础框架时会发现如下两点:

  1. 整了半天云里雾里不知道在干什么
  2. 手动配置很是繁琐

此时,springboot闪亮登场。主要特点如下:

  1. 注解会给使用者提供方便
  2. 对第三方技术进行了很好的封装和整合,提供了大量第三方接口
  3. 可以通过依赖自动配置,不需要XML等配置文件
  4. 提供了安全等特性
  • springcloud

springcloud是微服务解决方案,非常方便,是基于springboot的。

总结

综上,目前可以这么理解

  1. springMVC是spring框架的一部分
  2. 快速构建项目直接使用springboot即可
  3. 想比较好的理解springboot最好还是从spring入手,这样对比才能理解springboot到底做了哪些东西
  4. springcloud是基于springboot提供的微服务方案

猜你喜欢

转载自blog.csdn.net/MrCoderStack/article/details/88548164