Spring的优点分析

Spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品。无需开发重量级的Enterprise JavaBean(EJB),Spring为企业级Java开发提供了一种相对简单的方法,通过依赖注入和面向切面编程,用简单的Java对象(Plain Old Java Object,POJO)实现了EJB的功能。

Spring的缺点分析

虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。一开始,Spring用XML配置,而且是很多XML配置。Spring 2.5引入了基于注解的组件扫描,这消除了大量针对应用程序自身组件的显式XML配置。Spring 3.0引入了基于Java的配置,这是一种类型安全的可重构配置方式,可以代替XML。

所有这些配置都代表了开发时的损耗。因为在思考Spring特性配置和解决业务问题之间需要进行思维切换,所以编写配置挤占了编写应用程序逻辑的时间。和所有框架一样,Spring实用,但与此同时它要求的回报也不少。

除此之外,项目的依赖管理也是一件耗时耗力的事情。在环境搭建时,需要分析要导入哪些库的坐标,而且还需要分析导入与之有依赖关系的其他库的坐标,一旦选错了依赖的版本,随之而来的不兼容问题就会严重阻碍项目的开发进度。

SpringBoot的概述

SpringBoot解决上述Spring的缺点

SpringBoot对上述Spring的缺点进行的改善和优化,基于约定优于配置的思想,可以让开发人员不必在配置与逻辑业务之间进行思维的切换,全身心的投入到逻辑业务的代码编写中,从而大大提高了开发的效率,一定程度上缩短了项目周期。

SpringBoot的特点

- 为基于Spring的开发提供更快的入门体验
- 开箱即用,没有代码生成,也无需XML配置。同时也可以修改默认值来满足特定的需求
- 提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、外部配置等
- SpringBoot不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式

SpringBoot的核心功能

- 起步依赖

起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。

简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。

- 自动配置

Spring Boot的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定Spring配置应该用哪个,不该用哪个。该过程是Spring自动完成的。

SpringBoot优缺点分析相关推荐

  1. JWT 身份认证优缺点分析以及常见问题解决方案

    JWT 身份认证优缺点分析以及常见问题解决方案 参考文章: (1)JWT 身份认证优缺点分析以及常见问题解决方案 (2)https://www.cnblogs.com/idoljames/p/1169 ...

  2. 背景建模--Vibe 算法优缺点分析

    背景建模--Vibe 算法优缺点分析 一.Vibe 算法的优点 Vibe背景建模为运动目标检测研究邻域开拓了新思路,是一种新颖.快速及有效的运动目标检测算法.其优点有以下两点: 1.思想简单,易于实现 ...

  3. 【Android Protobuf 序列化】Protobuf 简介 ( Protobuf 项目简介 | Protobuf 优缺点分析 )

    文章目录 一.Protobuf 简介 二.Protobuf 优缺点分析 1.Protobuf 优点 2.Protobuf 缺点 三.参考资料 一.Protobuf 简介 Protobuf 是 Goog ...

  4. springboot 启动分析【难点】——如何自动扫描 @SpringBootApplication||如何加载自动配置类 @EnableAutoConfiguration||如何加载前端控制器

    springboot 启动分析[难点] 自动扫描的特点 默认扫描与 启动类 同级的所有包及其子包都可以自动扫描 如果不可要使用@ComponentScan(basePackage={"&qu ...

  5. Linux桌面环境介绍以及优缺点分析

    1. KDE 桌面系统 KDE 是 K Desktop Environment 的缩写,中文译为"K桌面环境". KDE 是基于大名鼎鼎的 Qt 的,最初于 1996 年作为开源项 ...

  6. 氨氮吹脱法脱与php有关系吗,吹脱法处理氨氮废水的原理及优缺点分析

    原标题:吹脱法处理氨氮废水的原理及优缺点分析 利用空气通过废水时与水中溶解气体发生氧化反应,使水中溶解性挥发物质由液相转入气相,并进一步吹脱分离的水处理方法.一般可分为人工与自然吹脱,漓源环保带您简单 ...

  7. 最大熵学习笔记(六)优缺点分析

    生活中我们经常听到人们说"不要把鸡蛋放到一个篮子里",这样可以降低风险.深究一下,这是为什么呢?其实,这里边包含了所谓的最大熵原理(The Maximum Entropy Prin ...

  8. DataURL:实现原理及优缺点分析

    Data URL基本原理 Data URL给了我们一种很巧妙的将图片"嵌入"到HTML中的方法.跟传统的用img 标记将服务器上的图片引用到页面中的方式不一样,在Data URL协 ...

  9. java 设计模式 优缺点_java设计模式2:原型模式(机制\优缺点分析\使用场景)...

    1. 原型模式实现机制 原型模式在设计模式中相对比较简单,它直接通过实现 Cloneable接口,再重写 clone()方法返回想要的对象就OK 了. 一起来看下代码 : public class P ...

  10. CSS、JavaScript和Ajax实现图片预加载的三大方法及优缺点分析

    预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度.这对图片画 廊及图片占据很大比例的网站来说十分有利,它保证了图片快速.无缝地发 ...

最新文章

  1. maven2创建或者导入eclipse工程 设置M2_REPO消除错误
  2. objdump反汇编用法示例
  3. 内连级元素有哪些_CSS里有哪些常见的块级元素和行内元素?
  4. 从虚拟化到云原生——容器技术的发展史
  5. QT的QDesignerFormWindowInterface类的使用
  6. 了解播放过滤器API
  7. Windows 上 GitHub Desktop 的操作
  8. java作用域对象笔记_Java学习笔记(七)——对象
  9. Page.Validate()方法
  10. webService发布在IIS服务器上
  11. java彩票程序_java程序设计 彩票购买抽奖程序 团队博客
  12. Java排序算法代码集(7个)
  13. Halcon深度学习预训练网络模型
  14. mysql静默安装_mysql5.7静默安装
  15. 打开注册表regedit
  16. cαr怎么发音_最全英语口语发音规则与技巧
  17. 河北大学计算机网络卷子,河北大学计算机网络试卷
  18. vscode中文注释斜体修改
  19. android 考试倒计时,考试倒计时软件下载-考试倒计时v1.0 最新版-腾牛安卓网
  20. 服务器带宽占用检测,怎么看服务器的带宽

热门文章

  1. 自走棋冷知识之源码篇
  2. 提升自我的42个实用技巧
  3. 关于我 — About Me
  4. 小强源码分析系列-Spring Boot2-源码分析1---调试环境搭建
  5. BZOJ4516 [Sdoi2016]生成魔咒 后缀自动机/后缀数组
  6. 财务上的大写数字从1到10分别是?
  7. 一些有意思的知识的网站
  8. 小米商城jsp代码_小米小爱鼠标评测:语音输入能否战未来
  9. android x86 cm14,cm14.1下载|cm14.1(cyanogenmod) 官方版 - 软件下载 - 绿茶软件园|33LC.com...
  10. 百度地图绘制大量标注点卡顿问题完美解决