当前位置: 首页 > news >正文

白洋湾做网站公司企业查询系统官网天眼查

白洋湾做网站公司,企业查询系统官网天眼查,松原网站推广,学校宣传片视频如何制作目录 一、Spring缺点分析 二、什么是Spring Boot 三、Spring Boot的核心功能 3.1 起步依赖 3.2 自动装配 一、Spring缺点分析 1. 配置文件和依赖太多了!!! spring是一个非常优秀的轻量级框架,以IOC(控制反转&…

目录

一、Spring缺点分析

二、什么是Spring Boot

三、Spring Boot的核心功能

3.1 起步依赖

3.2 自动装配


一、Spring缺点分析

1. 配置文件和依赖太多了!!!

spring是一个非常优秀的轻量级框架,以IOC(控制反转)和AOP(面向切面)为思想内核,极大简化了JAVA企业级项目的开发。虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。使用Spring进行项目开发需要在配置文件中写很多代码,所有这些配置都代表了开发时的损耗。

就比如下面这个图片就反映了进行数据源配置的时候配置文件有多繁琐!!!

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

下图就很好地诠释了spring框架开发的pom文件添加依赖的恐怖之处:

总结
Spring的缺点:

  • 配置过于繁琐。
  • 引入的依赖过多,版本控制复杂

二、什么是Spring Boot

SpringBoot对Spring的缺点进行改善和优化,基于约定大于配置的思想,简化了Spring的开发,所谓简化是指简化了Spring中大量的配置文件和繁琐的依赖引入。所以SpringBoot是一个服务于框架的框架,它不是对Spring功能的增强,而是提供了一种快速使用Spring框架的方式。

SpringBoot的优点:

  • 配置简单
  • 依赖引入简单
  • 提供了一些大型项目的非功能特性,如嵌入式服务器,安全指标,健康监测等。 

三、Spring Boot的核心功能

Spring Boot的核心功能就是起步依赖和自动装配

3.1 起步依赖

SpringBoot的依赖是基于功能的,而不是普通项目的依赖是基于JAR包的。SpringBoot将完成一个功能所需要的所有坐标打包到一起,并完成了版本适配,我们在使用某功能时只需要引入一个依赖即可。

其原理就是Maven的传递依赖,比如说a依赖b,b依赖c,c依赖d,那么如果我们引入了a依赖,剩下的b,c,d的依赖都会被加载进来。

在Spring Boot中,主要通过引入了父依赖,我们点进去看看父依赖引入了什么

我们可以看到里面继续引入了一个父依赖,我们ctrl再点击看看 

Ok,我们可以看到这里声明了许多了依赖的版本,所以这也是Spring Boot引入依赖时不用声明的版本的原因,在父依赖里面都已经全部定义好了。

3.2 自动装配

     SpringBoot项目自动提供最优配置,同时可以修改默值满足特定的要求。

1. 查看注解 @SpringBootApplication 的源码

@SpringBootConfiguration等同于@Configuration,代表这是一个SpringBoot的配置类,在spring中叫法是Configuration而已。

@Enable Auto Configuration代表开启自动配置功能。

2. 让我们+ctrl点击@Enable Auto Configuration,看看里面有什么

3. 从这里我们只能看出@Import注解导入了AutoConfigurationImportSelector类,现在我们再+ctrl看看AutoConfigurationImportSelector里面写了什么。

主要就是上面这个getCadicateConfigurations方法,里面调用了SpringLoaderFactories.loadFactoryNames方法,从调用改方法返回值是一个configurations集合,就可以猜出该方法主要作用就是获取所有的配置类。并且在后面有加了一句:

No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct.

翻译:在META-INF/spring.factories中没有找到自动配置类。如果使用的是自定义打包,请确保该文件是正确的。

也就意味着该方法主要在META-INF/spring.factories中找到需要加载的配置类,读取所有配置类的名称:

让我们查看META-INF/spring.factories文件有什么?

上面配置信息就是存在大量以Configuration结尾的类名称,这里类就是存有自动配置信息的类,在SpringBootApplication获取这些类的名称后再进行加载。

让我们以ServletWebServerFactoryAutoConfiguration类为例分析源码

这里又出现了一个自动加载:@EnableConfigurationProperties({ServerProperties.class}),代表的是自动加载服务器配置类ServerProperties,再让我们ctrl点进去看看

prefix = "server",代表了Spring Boot配置文件的前缀为server,SpringBoot会将以server前缀开始的属性自动映射到该类字段中,就比如我们配置网络端口的时候设置server.port = 8080,

如果我们没有进行配置,则Spring Boot会读取默认配置信息,而默认配置信息就是放在spring-configuration-metadata.json文件中,如下图:

该文件也是存放所有的默认配置信息!!!

总结

通过起步依赖和自动装配使得进行开发时省去了很多麻烦,不用进行版本的管理,以及进行各种配置,这里在SpringBoot中全部通过自动装配一步到位。

http://www.hengruixuexiao.com/news/26428.html

相关文章:

  • 网页设计与制作题与答案广州seo推广
  • 做代码和网站电商网站建设定制
  • 为什么用php做网站百度搜索引擎推广怎么弄
  • java自助建站网站建设评价百度一下官方网站
  • 重庆如何快速制作一个网站湖南网站设计
  • 如何用phpstorm做网站宁波网站建设与维护
  • 有网站吗给一个网站建设与优化
  • 怎样做自己的国外网站seo技术培训江门
  • 怎么做网站引流长沙seo
  • 12380网站建设情况说明关键词挖掘查询工具爱站网
  • 客户做网站嫌贵了seo自学网
  • 西安做网站的公司电话线上营销方式
  • funpinpin建站平台关键词seo价格
  • 网站建设费如何会计处理怎么买到精准客户的电话
  • 做毕业设计资料网站好长沙优化网站厂家
  • 衡水网站制作报价网站关键词优化代理
  • 做电商网站都需要学什么条件刚刚中国宣布重大消息
  • 河北网站建设公司排名网站推广具体内容
  • 树在线网页制作网站百度网络营销中心官网
  • 浙江网站制作公司网络营销的方法包括哪些
  • 怎么做免费视频网站青岛新闻最新今日头条
  • 企业免费建站温州seo优化公司
  • 那些网站可以做0首付分期手机站长工具的使用seo综合查询运营
  • 网站建设流程草图百度网盘客户端
  • 织梦网站图片不显示百度投放广告流程
  • drupal 做的网站seo关键词排名优化怎样
  • 施工企业最基本的安全管理制度乐陵seo外包公司
  • 临沂做网站多少钱宁波seo网络推广定制多少钱
  • 漯河网站推广哪家好短视频询盘获客系统
  • 免注册个人网站制作信阳网站推广公司