Blog Detail

  • SpringBoot框架简介

    目录

    一、什么是SpringBoot

    1.1 SpringBoot概述

    1.2 SpringBoot的优点

    1.3 SpringBoot的缺点

    二、如何搭建SpringBoot框架

    2.1 SpringBoot环境配置

    2.2 创建你的第一个SpringBoot项目

    2.2.1使用Spring Initializer快速创建Spring Boot项目

    三、SpringBoot核心配置与注解

    3.1 全局配置文件

    3.1.1 application.properties配置文件

    3.1.2 基本语法

    3.2 SpringBoot常用注解

    一、什么是SpringBoot

    1.1 SpringBoot概述

    SpringBoot是由Pivotal团队提供的基于Spring的全新框架。

    Spring Boot是一个用于快速构建基于Spring框架的Java应用程序的开源框架。它旨在简化Spring应用程序的开发过程,通过提供一种约定优于配置的方式,减少开发者对配置的需求,从而提高开发效率。

    SpringBoot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式,简省了繁重的配置,并提供了各种启动器,使开发者能快速上手。

    Spring Boot是一个功能强大且易于使用的框架,适用于各种规模的Java应用开发,尤其适合微服务架构的应用。

    1.2 SpringBoot的优点

    独立运行:内嵌服务器使得SpringBoot应用可以独立运行。简化部署:spring-boot-starter-web等启动器自动依赖其他组件,减少了Maven的配置。快速开发:通过提供默认配置和丰富的组件封装,加速了开发过程。

    1.3 SpringBoot的缺点

    复杂性:Spring框架非常强大,但也因此变得复杂。它包含了许多模块和组件,除了核心框架外,还有其他模块例如Spring Security、Spring Data等。对于新手来说,掌握所有这些模块和组件需要花费一定的时间和学习成本。

    学习曲线:使用Spring框架需要掌握许多概念和技术,如依赖注入、面向切面编程、Spring MVC等。对于已经从事Java开发的开发者来说可能不算是太大的问题,但对于新手来说会存在一定的学习曲线。

    XML配置:在早期版本的Spring框架中,配置文件通常采用XML格式。但是这种方式往往显得繁琐和冗长,且容易出现错误。随着Spring 3.0的发布,注解方式的配置逐渐取代了XML配置,但仍然有部分用户喜欢使用XML配置。

    运行时效率:尽管Spring框架在编译时可以进行依赖注入,但在运行时仍需要执行大量的反射操作,这可能会影响应用程序的性能。虽然Spring框架不是最快的框架,但也通过一些优化措施提高了运行时效率。

    二、如何搭建SpringBoot框架

    2.1 SpringBoot环境配置

    JDK版本:17 maven版本:3.9.0 开发工具:IDEA2021.3及以上 项目框架:spring boot 版本为 2.6.3

    JDK下载安装及配置环境变量(图文介绍):https://blog.csdn.net/qq_46009266/article/details/122522955

    Maven下载安装及配置环境变量(图文介绍):https://blog.csdn.net/u012660464/article/details/114113349

    2.2 创建你的第一个SpringBoot项目

    2.2.1使用Spring Initializer快速创建Spring Boot项目

    1、打开IDEA,选择“新建文件”2、在侧面板选择“Spring Boot”,选择Java语言,Maven框架和你使用的JDK版本。点击下一步

    3、添加项目依赖后点击创建 4、点开src目录下找到主程序。可在与主程序同级目录下创建控制类。

    三、SpringBoot核心配置与注解

    3.1 全局配置文件

    3.1.1 application.properties配置文件

    1、概念:application.properties是Spring Boot 中的一个重要组成部分,其主要作用是集中管理应用程序的配置属性。

    2、作用:

    集中管理配置属性:application.properties 文件用于存储应用程序的各种配置信息,如数据库连接、端口设置、日志级别、缓存配置等。通过将这些配置信息集中管理在一个文件中,可以使得应用程序更具可维护性和可配置性。

    覆盖默认配置:Spring Boot 提供了大量的自动配置,默认情况下,许多配置项已经预设好。但开发者可以根据实际需求,通过 application.properties 文件来修改这些默认配置,以适应具体的生产环境。

    多环境配置:Spring Boot 支持多环境配置,开发者可以为不同的环境(如开发环境、测试环境、生产环境)创建不同的配置文件,例如 application-dev.properties 和 application-prod.properties。通过激活不同的配置文件,可以轻松切换不同环境下的配置。

    配置文件加载顺序:Spring Boot 在启动时会按照一定的顺序加载配置文件,优先级从高到低依次为:项目根目录下的 config 文件夹、项目根目录、类路径 /config 包以及类路径根目录。开发者可以根据需要调整配置文件的位置,以确保配置的正确加载。

    简化开发过程:通过 application.properties 文件,开发者可以避免在代码中硬编码各种配置信息,从而简化开发过程,提高代码的可读性和可维护性。

    3.1.2 基本语法

    键值对的形式,键和值之间用等号(=)分隔。例如:

    server.port=8080

    spring.datasource.url=jdbc:mysql://localhost:3306/mydb

    logging.level.root=INFO

    注释:可以使用'#'号在配置文件中添加注释,'#'号后面的内容将被忽略。引号:如果配置项的值包含特殊字符或空格,可以使用双引号或单引号将其括起来。特殊字符的转义:如果配置项的值中包含特殊字符,可以使用反斜杠进行转义。

    3.2 SpringBoot常用注解

    Spring Boot框架提供了丰富的注解,用于简化配置、自动装配组件和实现声明式服务。

    @SpringBootApplication:

    作用:标注一个主程序类,表明这是一个Spring Boot应用程序的入口。功能:这是一个复合注解,组合了@Configuration、@EnableAutoConfiguration和@ComponentScan三个配置。它使得Spring Boot能够自动进行必要的配置,并扫描指定包下的组件。

    @RestController:

    作用:用于定义一个RESTful风格的控制器。功能:该注解相当于同时使用了@Controller和@ResponseBody,使得方法返回的数据会直接作为响应体返回给客户端。

    @Controller:

    作用:用于定义一个控制器类。功能:通常用于处理Web请求,返回视图名称。

    @Service:

    作用:用于定义一个服务类。功能:通常用于业务逻辑处理。

    @Repository:

    作用:用于定义一个数据访问层类。功能:通常用于数据库操作。

    @Autowired:

    作用:用于自动装配Bean。功能:Spring容器会自动将匹配的Bean注入到被注解的字段或方法中。

    @ComponentScan:

    作用:用于配置Spring需要扫描的被组件注解注释的类所在的包。功能:通过配置其basePackages属性或者value属性来配置需要扫描的包路径。

    @Configuration:

    作用:用于定义配置类。功能:该类中的方法可以使用@Bean注解来定义Bean。

    @Bean:

    作用:用于在配置类中定义Bean。功能:通过该注解的方法返回的对象会被Spring容器管理。

    @EnableAutoConfiguration:

    作用:开启Spring Boot的自动配置功能。功能:根据项目中的依赖自动配置Spring应用。

    @Component:

    作用:泛指组件,可配合CommandLineRunner使用,在程序启动后执行一些基础任务。功能:Spring容器会自动扫描并管理这些组件。

    @ConditionalOnClass:

    作用:根据类路径中的类是否存在来决定是否加载配置。功能:如果指定的类存在,则加载该配置;否则不加载。

    这些注解极大地简化了Spring Boot应用程序的开发和配置,使得开发者能够更专注于业务逻辑的实现。通过合理运用这些注解,可以实现代码的高内聚低耦合,提升项目的可维护性和扩展性。