• SpringBoot概念、创建和运行


    什么是Spring Boot ?为什么要学Spring Boot ?

    Spring 的诞生是为了简化 Java 程序的开发的,虽然 Spring 要比 Servlet 简单,但是业界的大佬们觉得还没将 Java 开发简化到极致,于是就有了Spring Boot。Spring Boot 的诞生是为了简化 Spring 程序开发的

    Spring Boot 翻译⼀下就是 Spring 脚手架,什么是脚手架呢?如下图所示:

    在这里插入图片描述

    脚手架具有以下作用:

    1、堆放及运输一定数量的建筑材料。
    2、保证施工人员在高处作业时的安全。
    3、满足短距离的水平运输要求。脚手架是建筑施工I过程中必须使用的重要设施,对施工安
    全、工程进度和施工质量有着直接影响。

    而 Spring Boot 就是 Spring 框架的脚手架,它就是为了快速开发 Spring 框架而诞生的

    Spring Boot 优点

    • 快速集成框架,Spring Boot 提供了启动添加依赖的功能,用于秒级集成各种框架
    • 内置运行容器,无需配置 Tomcat 等 Web 容器,直接运行和部署程序
    • 快速部署项目,无需外部容器即可启动并运行项目
    • 可以完全抛弃繁琐的 XML,使⽤注解和配置的方式进行开发
    • ⽀持更多的监控的指标,可以更好的了解项项目的运行情况

    Spring Boot 项目创建

    新建一个Spring boot 项目
    第一步:

    在这里插入图片描述

    第二步:

    在这里插入图片描述

    第三步:

    在这里插入图片描述

    第四步:

    在这里插入图片描述

    第五步:

    在这里插入图片描述

    到现在为止,项目已经创建好了,可以尝试着运行一下,如果有 Spring Boot 的 图标和运行时间,则Spring Boot 的项目已经创建成功

    在这里插入图片描述

    在这里插入图片描述

    注意事项
    第⼀次打开 Spring Boot 项⽬需要加载很久,因为当前 Spring Boot 框架并没有在自己的本地仓库

    为了加速 Spring Boot 项目的下载,在打开项目之前,请先确认自己的 Maven 已经配置为国内源,如果没有配置,可以查看我之前写的博客,进行配置—》配置国内源–在1.2小节中

    项目目录介绍和运行

    在这里插入图片描述

    Spring Boot 项目有三个主要的目录

    • src/main/java 为 Java 源代码
    • src/main/resources 为静态资源或配置文件
      /static:静态资源文件夹,例如html,js,css,img…
      /templates:模版资源文件夹
      application.properties,配置文件
    • src/test/java:里面的代码和 src/main/java 中的代码一模一样,主要用于单元测试

    在这里插入图片描述

    这四个文件和 Spring Boot 项目不相关,可以删掉

    前面我们已经测试过Spring Boot 项目能正常启动,现在可以编写代码,输出 “Hello Spring Boot”

    在和启动类(SpringBoot1Application)同级目录下,这时候 Spring Boot 项目才能正常的将 bean 注入到容器中。

    在 demo 下新建一个 UserController 类

    在这里插入图片描述

    代码具体如下:

    @Controller
    public class UserController {
        @ResponseBody // 表示返回一个非静态页面的数据
        @RequestMapping("sayhi") //设置路由地址 sayhi,建议写成小写
        public String sayHi() {
            return "hello Spring Boot";
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    然后启动项目,在浏览器中访问 http://127.0.0.1:8080/sayhi ,如果页面能正常显示并且有数据,表示运行成功

    在这里插入图片描述

    约定大于配置

    以上情况反应了 Spring Boot 项目的另⼀个特点:约定大于配置

    对比 Spring 的项目我们也可以看到这⼀特点,比如在 Spring 中也是要配置 Bean 的扫描路径的,才能将 Bean 对象 注入到容器中,而在 Spring Boot 项目中,我们并没有配置过扫描路径,为什么也能将 Bean 对象注入到容器中。
    因为 Spring Boot 规定,需要被 Spring Boot 托管的对象必须要放在与启动类同级的目录下或者子目录下,也就是 demo 目录下,才能被识别

    如果我们不按照规定,将 UserController 放在 example 目录下,与 demo 目录同级,则不会被扫描到,例如:

    在这里插入图片描述

    此时再次启动项目,进行访问

    在这里插入图片描述

    Spring Boot 的配置是比较少的,但是 Spring Boot 的设计思想是:约定大于配置

  • 相关阅读:
    定时任务cron与crontab
    Docker 常用命令 - 容器数据卷
    (阿里云)Linux部署SSM项目全过程
    【RocketMQ】【源码】Dledger日志复制源码分析
    javaweb【初识】
    EEPROM芯片选型对比表
    如何解决Ubuntu中软件包安装时的404错误(无法安装gdb、cgddb等)
    Chromium VIZ架构详解
    error while loading shared libraries: libc.so.6 误删除libc.so.6急救办法,
    第五章:抽象类
  • 原文地址:https://blog.csdn.net/qq_56044032/article/details/128070214