SpringBoot非正式实践--1.构建一个简单的springboot工程

前言

最近开始接触springboot,第一是当前的主流,第二是新工作项目中用到了。以前很少有记录的习惯,或许这就是我到现在还是个烂泥的原因吧。暴风哭泣。刚开始写一些东西,不专业也好,啰嗦也好,一笔带过也好,都是一种记录吧,当然能帮助到更多人更好,要是有人能提出不同的见解一起学习也好啊。

环境:

jdk1.8
idea
maven 3.5.0
springboot 2.0.5.RELEASE

首先说说我对springboot的理解:

1.本质上还是spring的项目
2.简化了spring的一些复杂的配置,并且统一版本,让开发人员能快速构建一个项目。
3.内置tomcat容器。

关于第二点想说真的很多,以前构建一个ssm项目,要配application一大堆bean,还有application-mvc。反正挺难的,有时候就是想做个测试,想到要创建一堆东西就放弃了,现在有了springboot 确实方便了不少。好啦 废话不少说 开始和大家一起创建一个最简单的springboot 项目。

看过一些博文,入门的讲springboot的创建都是根据官网或者ide初始化的一个springboot项目,然鹅,今天我带大家自己构造springboot项目

1.首先创建一个maven工程

image

2.pom文件打开,添加一个pom依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
        <version>2.0.5.RELEASE</version>
    </dependency>

3.创建application类,随便建一个普通类,加入main函数,在类上面加注解@SpringBootApplication表明他是一个启动类,main函数中调用SpringApplication.run(Class,String[])方法。最后启动这个类

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args){
        SpringApplication.run(DemoApplication.class,args);
    }
}

现在启动可以看到如下结果

image

就代表启动成功了。

有人问啦,这么简单吗? 没错,构建一个最简单的springboot程序就是这么简单,一个依赖,一个启动类,就行了。但是呢,由于springboot内置了很多starter的依赖,例如web,jdbc等等,这些都是和当前spring-boot-starter类一个版本的,因为要实现统一的版本管理,防止jar冲突嘛,这也是springboot便捷之处,那要怎么实现这个统一的版本管理呢?

在传统的maven项目中,我们怎么做的?

我们现在properties中定一个version,如:

<springboot.version>2.0.5.RELEASE</springboot.version>

然后再到dependency中引用他们

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <version>${springboot.version}</version>
</dependency>

这样固然能实现,但是由于springboot写了很多starter,所以继续这样用的话可能每个dependency下都要多一行${springboot.version},现在springboot给我们提供了一种更优雅的方式实现这个功能。他利用了maven的继承,将springboot 一些starter预先定义在spring-boot-dependencies中,同时也提供了一些常用jar的依赖,大概有176个,可以截几张图让大家感受一下

image

image

然后spring-boot-starter-parent又继承了spring-boot-dependencies,并定义了一些插件的规范,如java编译版本 等等。

所以 我们只要继承spring-boot-starter-parent就行了 后续许许多多依赖就不用写版本啦,因为只要在parent中被预定义了的maven会根据groupId和artifactId自己去里面找版本啦。完整的pom文件如下

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.5.RELEASE</version>
</parent>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
    </dependency>
</dependencies>
posted @ 2018-11-22 23:06  爪哇岛求生记  阅读(88)  评论(0)    收藏  举报