SpringBoot教程(二) | 创建SpringBoot项目

一、前言

接下来我们要学习一下如何创建一个spring boot项目。

二、所需环境

  • JDK1.8
  • Maven 3.6
  • Idea 2021.1

三、创建方式

  1. 从Maven项目改造为springboot项目
  2. 在线创建springboot项目(官网和阿里云脚手架)
  3. 在使用开发工具idea创建SpringBoot项目( Spring Initializr),本质上其实就是使用在线创建的API

建议用第三种方式:idea创建SpringBoot项目

方式一:maven 改造

maven改造,比较麻烦

1. 创建maven项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 添加依赖,让其成为springBoot项目

先讲一下 spring-boot-dependencies

  1. spring-boot-dependencies 称之为 Spring Boot的依赖项版本管理文档,包含了Spring Boot项目所需的大量依赖项及其推荐的版本号
  2. 通过引入它后,你可以不需要在依赖项上都显式指定版本号,因为Maven会自动从spring-boot-dependencies 中获取版本号。
  3. 重点:它只是声明哪些依赖项应该使用什么版本的,但它本身并不将任何依赖项添加到项目的类路径中

方式一(直接依赖 spring-boot-starter-parent)

直接继承starter parent项目
因为spring-boot-starter-parent 里面也是 引入了 spring-boot-dependencies
缺点就是该项目不能继承父POM了。

在pom文件中添加如下依赖

<parent> 
  <groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>2.6.2</version> 
  <relativePath/> <!-- lookup parent from repository --> 
</parent>

然后点击项目右侧maven的刷新按钮,等到依赖下载完毕就可以了。
前提是maven一定要配置正确。

完整pom.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.2</version>
        <relativePath/>
    </parent>

    <groupId>org.example</groupId>
    <artifactId>springboot-test</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>

</project>

方式二(使用 dependencyManagement + spring-boot-dependencies)

如果你的项目需要继承另一个项目POM,或者你想要更灵活地控制项目的构建和配置。
那么 使用 spring-boot-dependencies作为 <dependencyManagement> 的一部分更适合

<!-- dependencyManagement的作用
    可以统一管理项目的版本号,确保应用的各个项目的依赖和版本一致
    特别是该项目作为其他项目的父模块时 -->
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-dependencies</artifactId>
      <version>2.6.2</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

就是在 中添加依赖。完整pom如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>springboot-test</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!-- 定义可复用的变量 -->
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>

    <!-- dependencyManagement的作用
    可以统一管理项目的版本号,确保应用的各个项目的依赖和版本一致
    特别是该项目作为其他项目的父模块时 -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.6.2</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

</project>

但是要注意上面我们只是引用了springBoot的依赖管理,真正依赖的jar包还是没有的。
接下来我们就可以按需添加。
比如我们现在要进行web的开发,那么我们就需要有引入web相对应的依赖。
在pom 文件中添加 依赖。

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

添加后的完整pom

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>springboot-test</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!-- 定义可复用的变量 -->
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>

    <!-- dependencyManagement的作用
    可以统一管理项目的版本号,确保应用的各个项目的依赖和版本一致
    特别是该项目作为其他项目的父模块时 -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.6.2</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
    
</project>

这里无需写版本号,因为我们已经引入了springBoot的版本号2.6.2. 在它的统一pom文件中已经对所有的经常使用的模块做了统一的依赖管理。
感兴趣的可以点进去springBooot的pom中去看看。
在这里插入图片描述

3. 创建启动类

首先在src/main/java下创建一个包: com.jiang.springboottest,
然后在这个包下在创建一个类名字就叫SpringBootTestApplication. 注意千万别叫SpringBootApplication, 或者SpringApplication这类的名字,因为很容易跟springBoot中的类名重复,导致一些莫名其妙的错误。
结构如下:
在这里插入图片描述

package com.jiang.springboottest;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

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

直接运行这个main方法,这个项目就已经启动了。端口号是8080。
在这里插入图片描述
spring-boot-starter-web 中包好的所有依赖了,里面有tomcat, webmvc, json。这就是springBoot带来的按需加载的好处,并且整个项目,我们只写了一个启动了,加了一个注解就完成了,springBoot完全简化了配置。 我们访问一下8080

方式二:在线创建

① spring 官网创建
进入官网,https://start.spring.io/ ,填写信息后点击GENERATE:
在这里插入图片描述
② 阿里云脚手架创建
进入阿里云springboot脚手架网址,https://start.aliyun.com/,填写信息后点击获取代码:
在这里插入图片描述

方式三:idea 创建 SpringBoot 项目

1. 项目名称、SDK、Java、打包 选择

服务器URL默认为:https://start.spring.io/
由于 现在官网创建springboot项目的最低Java版本是jdk 17
在这里插入图片描述
如果你需要创建 java 8
则需要把服务器URL改为:https://start.aliyun.com/ ,就可以选择 java 8
在这里插入图片描述
然后点击下一步。开始选择依赖项

2. 依赖项选择

一般我们就选

1.Spring Web
用于构建Web应用程序,特别是RESTful应用程序。这是大多数Web项目的核心依赖。
包括常用的注解如@Controller@RestController@GetMapping等。

2.Spring Boot DevTools
提供开发者工具,包括自动重启、实时加载等特性,有助于加快开发过程。

3. 项目结构

创建成功以后的项目结构如下
在这里插入图片描述

4. 了解 全局pom.xml

这个里面有个关键的 spring-boot-dependencies 依赖。
它提供统一的、经过测试的依赖版本管理,简化了 Spring Boot 项目的依赖配置和维护工作,同时提高了项目的兼容性和稳定性。

让我们在不指定版本号的情况下引入 Spring Boot 的 starter 依赖和其他兼容的库。(用它里面默认的)

在这里插入图片描述

然后需要进一步配置一下 “maven配置、setting.xml、本地依赖仓库”的配置
在这里插入图片描述

最后 执行启动类,如下
在这里插入图片描述

参考文章;
【1】SpringBoot教程(二) | 创建SpringBoot项目
【2】创建springboot项目的三种方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值