SpringBoot原理分析之起步依赖

5 篇文章 0 订阅
3 篇文章 0 订阅

近年来SpringBoot火的可是一塌糊涂,得益于它零配置,只需要在maven pom.xml引入相应的依赖就能启动了。这一技术的出现,解救了面向大量xml编程而无法自拔的程序猿们-。-

  一、初次使用SpringBoot, 我们都知道要在pom.xml中引入:

        <!-- 所有的springboot工程都必须继承spring-boot-starter-parent -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.1.9.RELEASE</version>
	</parent>

然后在dependencies中引入web开发所用的依赖:

                <!--web开发的起步依赖 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

经过以上步骤就可以代替原本SSM框架的大量的xml配置,就可以进行web开发了。这感觉,太爽了。但是在爽的同时,我们有思考过为什么只需要这么少的配置就可以了呢?依赖的版本是如何控制的呢?

二、刨根究底

1.ctrl键+鼠标左键点击artifactId

我们就会进来spingboot的父依赖:

在这个xml文件下,我们会看到spring-boot-starter-parent  也有父依赖:spring-boot-dependencies。

接着ctrl+鼠标左键:进入

我们会发现:properties中规定了spring-boot-starter-parent  2.1.9RELEASE 所要用到的其他依赖的版本,我们需要用到某个依赖,只要在pom.xml 的dependency中引入该以来的组名和坐标即可,不需要操心版本问题。

2.版本问题解决了,那么SpringBoot是如何做到只需要引入spring-boot-starter-web就可以进行web开发了呢?

同样的方法,我们点进去spring-boot-starter-web:看到了spring-boot-starter-web的父依赖:

发现同样 <properties>标签下规定了spring-boot-starter-web  可能要用到的其他依赖的版本:

而且在<dependency>标签下,我们看到了spring-boot-starter-web 依赖了web开发所需要的其他jar包,

如:tomcat

如:freemarker

我们还看到了跟spring-boot-starter-web同名的一个依赖,如下图:

同样的方法点进去:我们看到了久违的web和webmvc

由此我们可以看出,我们只需要引入spring-boot-starter-web,springBoot框架就帮我们引入了web和webmvc.

综上:SpringBoot框架确实帮助我们干了很多活我们只需要引入

    <!-- 所有的springboot工程都必须继承spring-boot-starter-parent -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.1.9.RELEASE</version>
	</parent>
            <!--web开发的起步依赖 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

以上两个依赖,就可以进行web开发啦!知其然,知其所以然!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值