1. SpringBoot 入门

1. SpringBoot 简介

SpringBoot是由Pivotal团队提供的全新框架,可以帮助我们开发基于Spring的、独立的、生产级的应用程序。

其中SpringBoot的官网是:Spring Boot Reference Documentation


SpringBoot的主要目标是:

  • 为所有Spring开发提供更快的入门体验

  • 开箱即用,提供了自动配置

  • 提供一系列大型项目通用的非功能性特性

    • 外部化配置、嵌入式服务器、安全性、健康检查、指标
  • 完全不需要代码生成,也不需要XML配置


注意:SpringBoot 并不是Spring功能上的增强,而是提供了一种快速使用Spring的方式。

2. SpringBoot入门

2.1 入门案例开发步骤

这里先采用的是手动创建的方式

  1. 新建Maven项目

  2. 引入依赖

        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.7.3</version>
        </parent>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
        </dependencies>
    
  3. 创建引导类

    package com.north;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    /**
     * @Author North
     * @Date 2024/5/2
     */
    @SpringBootApplication
    public class Application {
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }
    
  4. 开发控制器类

    package com.north.controller;
    
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    /**
     * @Author North
     * @Date 2024/5/2
     */
    @RestController
    @RequestMapping("/books")
    public class BookController {
    
        @RequestMapping("/save")
        public String save() {
            System.out.println("user save");
            return "hello springboot!";
        }
    
    }
    
  5. 运行自动生成的Application类

    image

    image


2.2 通过idea骨架进行创建

image

2.3 基于SpringBoot官网进行创建

官网地址

image

3. 思考:

  1. 入门案例中没有引入spring-webmvc等依赖包,没有配置Tomcat服务器,为什么能正常启动?

    1. SpringBoot 内部集成的含有tomcat

      image

  2. 没有配置端口号,为什么端口是8080?

    1. Tomcat端口号默认配置为8080

4. SpringBoot 入门总结 - 起步依赖

  • starter

    • SpringBoot中常见项目名称,定义了当前项目使用的所有项目坐标,以达到减少依赖配置的目的
  • parent

    • 所有SpringBoot项目要继承的项目,定义了若干个坐标版本号(依赖管理,而非依赖),以达到减少依赖冲突的目的
    • spring-boot-starter-parent(2.5.0)与 spring-boot-starter-parent(2.4.6)共计57处坐标版本不同

实际开发

  • 使用任意坐标时,仅书写GAV中的G和A,V由SpringBoot提供
  • 如发生坐标错误,再指定version(要小心版本冲突)

pom中starter、parent作用是什么?

  • starter:减少依赖配置
  • parent: 减少依赖冲突

image

posted @ 2024-05-02 10:20  捞月亮的小北  阅读(8)  评论(0编辑  收藏  举报