[SpringBoot]入门案例

文章目录

  • 案例引入
  • 快速入门
    • 创建新模块
    • 创建 `Controller`
    • 启动服务器
    • 进行测试
  • SpringBoot的安装问题
    • 下载速度的问题
    • 兼容性问题

案例引入

SpringBoot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化 Spring 应用的初始搭建以及开发过程

使用了 Spring 框架后已经简化了我们的开发。而 SpringBoot 又是对 Spring 开发进行简化的,可想而知 SpringBoot 使用的简单及广泛性。既然 SpringBoot 是用来简化 Spring 开发的,那我们就先回顾一下,以 SpringMVC 开发为例:

  1. 创建工程,并在 pom.xml 配置文件中配置所依赖的坐标

    [SpringBoot]入门案例_第1张图片

  2. 编写 web3.0 的配置类

    作为 web 程序,web3.0 的配置类不能缺少,而这个配置类还是比较麻烦的,代码如下

    [SpringBoot]入门案例_第2张图片

  3. 编写 SpringMVC 的配置类

    [SpringBoot]入门案例_第3张图片
    做到这只是将工程的架子搭起来。要想被外界访问,最起码还需要提供一个 Controller 类,在该类中提供一个方法。

  4. 编写 Controller

    [SpringBoot]入门案例_第4张图片

从上面的 SpringMVC 程序开发可以看到,前三步都是在搭建环境,而且这三步基本都是固定的。SpringBoot 就是对这三步进行简化了。接下来我们通过一个入门案例来体现 SpingBoot 简化 Spring 开发。

快速入门

SpringBoot 开发起来特别简单,分为如下几步:

  • 创建新模块,选择Spring初始化,并配置模块相关基础信息
  • 选择当前模块需要使用的技术集
  • 开发控制器类
  • 运行自动生成的Application类

知道了 SpringBoot 的开发步骤后,接下来我们进行具体的操作

创建新模块

  • 点击 + 选择 New Module 创建新模块

    [SpringBoot]入门案例_第5张图片

  • 选择 Spring Initializr ,用来创建 SpringBoot 工程

    以前我们选择的是 Maven ,今天选择 Spring Initializr 来快速构建 SpringBoot 工程。而在 Module SDK 这一项选择我们安装的 JDK 版本。

    [SpringBoot]入门案例_第6张图片

  • SpringBoot 工程进行相关的设置

    我们使用这种方式构建的 SpringBoot 工程其实也是 Maven 工程,而该方式只是一种快速构建的方式而已。

    [SpringBoot]入门案例_第7张图片

    注意:打包方式这里需要设置为 Jar

  • 选中 Web,然后勾选 Spring Web

    由于我们需要开发一个 web 程序,使用到了 SpringMVC 技术,所以按照下图红框进行勾选

  • 下图界面不需要任何修改,直接点击 Finish 完成 SpringBoot 工程的构建

经过以上步骤后就创建了如下结构的模块,它会帮我们自动生成一个 Application 类,而该类一会再启动服务器时会用到

[SpringBoot]入门案例_第8张图片

注意:

  1. 在创建好的工程中不需要创建配置类

  2. 创建好的项目会自动生成其他的一些文件,而这些文件目前对我们来说没有任何作用,所以可以将这些文件删除。

    可以删除的目录和文件如下:

    • .mvn
    • .gitignore
    • HELP.md
    • mvnw
    • mvnw.cmd

创建 Controller

com.itheima.controller 包下创建 BookController ,代码如下:

@RestController
@RequestMapping("/books")
public class BookController {

    @GetMapping("/{id}")
    public String getById(@PathVariable Integer id){
        System.out.println("id ==> "+id);
        return "hello , spring boot!";
    }
}

启动服务器

运行 SpringBoot 工程不需要使用本地的 Tomcat 和 插件,只运行项目 com.itheima 包下的 Application 类,我们就可以在控制台看出如下信息

[SpringBoot]入门案例_第9张图片

进行测试

使用 Postman 工具来测试我们的程序

[SpringBoot]入门案例_第10张图片

通过上面的入门案例我们可以看到使用 SpringBoot 进行开发,使整个开发变得很简单,那它是如何做到的呢?

要研究这个问题,我们需要看看 Application 类和 pom.xml 都书写了什么。先看看 Applicaion 类,该类内容如下:

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

这个类中的东西很简单,就在类上添加了一个 @SpringBootApplication 注解,而在主方法中就一行代码。我们在启动服务器时就是执行的该类中的主方法。

再看看 pom.xml 配置文件中的内容


<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0modelVersion>
    
    
    <parent>
        <groupId>org.springframework.bootgroupId>
        <artifactId>spring-boot-starter-parentartifactId>
        <version>2.5.0version>
    parent>
    <groupId>com.itheimagroupId>
    <artifactId>springboot_01_quickstartartifactId>
    <version>0.0.1-SNAPSHOTversion>

    
    <properties>
        <java.version>8java.version>
    properties>
    
    <dependencies>
        
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-webartifactId>
        dependency>
		
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-testartifactId>
            <scope>testscope>
        dependency>
    dependencies>

    <build>
        <plugins>
            
            <plugin>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-maven-pluginartifactId>
            plugin>
        plugins>
    build>
project>

我们代码之所以能简化,就是因为指定的父工程和 Spring Web 依赖实现的。

SpringBoot的安装问题

下载速度的问题

第一次使用SpringBoot的时候,会下载很多依赖,如果我们不使用国内源的话就会下得很慢。

我们先找到我们的setting.xml,然后加一个镜像:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                          https://maven.apache.org/xsd/settings-1.0.0.xsd">
      <mirrors>
        <mirror>  
            <id>alimavenid>  
            <name>aliyun mavenname>  
            <url>http://maven.aliyun.com/nexus/content/groups/public/url>  
            <mirrorOf>centralmirrorOf>          
        mirror>  
      mirrors>
settings>

配置完成之后,记得在你的IDEA中使用:
[SpringBoot]入门案例_第11张图片

兼容性问题

截至文章发布,springboot在官网上的最低创建版本是2.6.10。这个最低版本跟tomcat9及以上兼容。

也就是说如果你现在使用的是tomcat8,那么就会因为兼容性问题,无法使用springboot

网上有人的解决办法:
在pom.xml文件中指定低一点版本的tomcat内嵌容器
[SpringBoot]入门案例_第12张图片
这种是不成立的,你Springboot里面下载的依赖其本身就是互相兼容的,你去单独修改一个的版本,不能解决兼容性问题。

你可能感兴趣的:(SpringBoot,spring,boot,spring,java)