SpringBoot创建和使用

文章目录

  • 什么是Spring Boot
    • 为什么要学习Spring Boot
    • Spring Boot的优点
  • 使用Idea创建springboot项目
    • 安装插件(专业版不用)
    • 创建项目
  • 网页版创建
    • 使用Spring Initializr
    • 解压项目导入Idea
  • 项目目录结构和运行
    • 目录结构介绍
    • 项目的运行
  • 注意事项

什么是Spring Boot

Spring Boot是一个用于简化Spring应用程序开发的框架。它通过提供一系列默认配置和预置的模板,使得构建、部署和运行基于Spring的应用程序变得更加容易。Spring Boot旨在减少开发人员在配置方面的繁琐工作,同时提供了快速开发应用程序的能力。

为什么要学习Spring Boot

  1. 简化开发: Spring Boot通过提供默认配置和自动配置功能,大大减少了开发者的配置工作,让开发集中于业务逻辑而不是繁琐的配置。

  2. 快速开发: Spring Boot提供了各种起步依赖(Starter),这些依赖提供了常见应用场景的预置配置,可以快速搭建一个功能完整的应用程序。

  3. 微服务架构: Spring Boot在微服务架构中得到广泛应用,它支持构建独立的、轻量级的服务,可以方便地创建和管理多个微服务。

  4. 生态系统: Spring Boot构建在Spring Framework之上,可以享受Spring生态系统的众多功能和库。

Spring Boot的优点

  1. 简化配置: Spring Boot通过自动配置和约定大于配置的原则,减少了大量的配置工作。

  2. 内嵌服务器: Spring Boot可以将嵌入式服务器(如Tomcat、Jetty)嵌入到应用程序中,简化了部署过程。

  3. 起步依赖: Spring Boot提供了各种起步依赖,包括数据库、消息队列、安全等功能,可以快速启动具有特定功能的应用程序。

  4. 自动配置: Spring Boot根据项目的依赖自动配置应用程序,减少了手动配置的需求。

  5. 监控和管理: Spring Boot提供了各种监控和管理功能,包括健康检查、指标监控等,有助于维护应用程序的稳定性。

使用Idea创建springboot项目

安装插件(专业版不用)

当我们使用Idea社区版时,要先安装Spring Boot Helper 插件才能创建Spring Boot 项目,安装好后就和专业版创建springboot项目是一样的了,如下图所示:
在这里插入图片描述

创建项目

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

第一次创建springboot项目要加载很久,因为当前的springboot框架并不在本地的仓库中。为了加快spring boot的下载,在打开项目之前,确认自己的Maven的源为国内源。参考博客:本地配置Maven

网页版创建

不使⽤ Idea 也可以创建 Spring Boot 项⽬,我们可以使⽤ Spring 官⽅提供的⽹⻚版来创建 Spring Boot 项⽬。

使用Spring Initializr

访问Spring Initializr网站,选择项目的基本设置(如项目类型、语言、Spring Boot版本等)以及所需的起步依赖。然后,下载生成的项目结构压缩包。
在这里插入图片描述

解压项目导入Idea

将下载的项目结构压缩包解压到本地目录。
在这里插入图片描述
在Idea打开项目即可
在这里插入图片描述

项目目录结构和运行

目录结构介绍

在这里插入图片描述
在Spring Boot中,一个新建项目的目录结构通常遵循标准的Maven或Gradle项目结构,因为Spring Boot项目可以使用这两种构建工具来管理依赖和构建过程。以下是一个典型的Spring Boot项目目录结构的简要介绍:

my-spring-boot-project/
├── src/
│   ├── main/
│   │   ├── java/               # Java源代码目录
│   │   │   └── com/
│   │   │       └── example/
│   │   │           └── MyApp.java   # Spring Boot应用的入口类
│   │   ├── resources/          # 资源文件目录
│   │   │   ├── static/          # 静态资源文件(CSS、JavaScript等)
│   │   │   ├── templates/		 #模板资源文件
│   │   │   └── application.properties  # 应用配置文件
│   │   └── webapp/             # Web应用资源目录(可选,不常用)
│   ├── test/
│   │   ├── java/               # 测试源代码目录
│   │   └── resources/          # 测试资源文件目录
├── target/                     # 构建输出目录(自动生成,包含编译后的类和打包后的应用)
├── mvnw                         # Maven Wrapper脚本(用于在没有安装Maven的情况下执行构建任务)
├── mvnw.cmd                     # Windows上的Maven Wrapper脚本
├── pom.xml                      # Maven构建配置文件
└── ...                          # 其他项目相关文件和目录

以下是一些目录和文件的详细说明:

  • src/main/java/:这是存放Java源代码的目录。您的Spring Boot应用的主要业务逻辑和功能将在这里实现。

  • src/main/resources/:这是存放应用资源文件的目录,包括配置文件(如application.propertiesapplication.yml)、日志配置等。

  • src/main/resources/static/:这是存放静态资源文件(如CSS、JavaScript、图片等)的目录。这些文件可以直接通过URL访问。

  • src/test/java/:这是存放测试源代码的目录。您可以编写单元测试、集成测试等以确保应用的质量。

  • src/test/resources/:这是存放测试资源文件的目录,用于支持测试过程。

  • target/:这是构建输出目录,Maven或Gradle会在这里生成编译后的类文件、JAR文件等。

  • mvnwmvnw.cmd:这是Maven Wrapper脚本,允许您在没有安装Maven的情况下执行Maven构建任务。这有助于确保团队成员使用相同版本的Maven。

  • pom.xml:这是Maven构建配置文件,其中包含项目的依赖、插件、构建设置等信息。如果您使用Gradle作为构建工具,则会有一个类似的build.gradle文件。

除了上述核心目录和文件外,实际的项目可能还包括其他文件和目录,例如自定义配置文件、额外的资源目录等,具体取决于项目的需求和架构。

项目的运行

在创建的项⽬包路径下创建 UserController ⽂件,实现代码如下:

package com.fyd.springbootdemotest.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/user")
public class UserController {

    @RequestMapping("/sayhello")
    public String sayHello (){
        return "Hello,SpringBoot.";
    }
}

点击启动类的 main ⽅法就可以运⾏ Spring Boot 项⽬了,如下图所示:
在这里插入图片描述
这样就成功了,访问的端口号为8080(默认)
在这里插入图片描述
最终我们访问 http://localhost:8080/user/sayhello,效果如下:
在这里插入图片描述

注意事项

SpringBoot项目的重要的特点是:约定大于配置。我们要把注入到容器类和启动类放到同级目录下,才能够正常启动

错误路径:
在这里插入图片描述
程序报错: 这说明 Spring Boot 项⽬没有将对象注⼊到容器中
在这里插入图片描述
正确路径:
在这里插入图片描述

我们可以发现,在springboot的项目中,我们无需去配置Bean的扫描路径的,因为这是约定好了的。文章来源地址https://uudwc.com/A/9v3qL

原文地址:https://blog.csdn.net/weixin_58808338/article/details/132385592

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

上一篇 2023年08月21日 03:18
【令牌桶算法与漏桶算法】
下一篇 2023年08月21日 03:18