关于Spring Boot的配置文件

1        pom.xml

它是Maven项目的配置文件。在pom.xml中,你可以定义项目的依赖项、插件和构建行为等。它通常包含构建项目所需的各种配置信息,例如项目的版本、依赖项的坐标、构建的输出目录等。

pom.xml文件中的配置内容包括:

  1. groupId:指定项目的组织ID。
  2. artifactId:指定项目的唯一标识符。
  3. version:指定项目的版本号。
  4. dependencies:指定项目所依赖的其他库和框架。
  5. build:指定项目的构建行为,例如编译参数、输出目录等。
  6. plugins:指定项目所使用的插件,例如编译插件、测试插件等。

通过pom.xml文件,可以集中管理项目的依赖项和构建行为,简化项目的管理和部署过程。

怎样寻找一个依赖?

在Spring Boot项目中,寻找和添加依赖项通常是通过Maven来完成的,而不是通过prom.xml文件。

Maven使用pom.xml文件来管理项目的依赖项。如果你想在Spring Boot项目中添加一个依赖项,可以按照以下步骤进行:

1. 打开项目的pom.xml文件。

2. 在``标签内,添加一个新的``标签。

3. 在``标签内,填写你要添加的依赖项的坐标信息,包括groupId、artifactId和version。例如:


  
    org.springframework.boot
    spring-boot-starter-web
    2.5.4
  

 

   这个例子中,我们添加了Spring Boot Web Starter依赖项。

4. 保存pom.xml文件,Maven会自动下载并管理这个依赖项。

5. 在你的代码中,你可以通过import语句或使用依赖项提供的类和方法来使用这个依赖项。

需要注意的是,prom.xml文件通常是用来配置Prometheus监控系统的相关配置,而不是用来管理Spring Boot项目的依赖项。在Spring Boot项目中,使用pom.xml文件来管理依赖项更为常见。

关于org.springframework.boot

org.springframework.boot模块是Spring Boot框架的核心模块,包含了Spring Boot框架的主要功能和特性。其中包括自动配置、启动器、应用程序生命周期管理、命令行界面等。通过引入org.springframework.boot模块,开发者可以快速构建和运行Spring Boot应用程序。在项目的pom.xml文件中,通常会添加org.springframework.boot模块作为依赖项,以使用Spring Boot的核心功能。

关于spring-boot-starter-web

在Spring Boot中,启动器(Starter)是一组预配置的依赖项,它们可以帮助开发者快速添加需要的功能和特性。spring-boot-starter-web是一个包含了使用Spring MVC构建Web应用程序所需的依赖项的启动器。

spring-boot-starter-web包括了以下依赖项:

  • spring-boot-starter:核心Spring Boot依赖项,包含了Spring Boot框架的核心功能。
  • spring-boot-starter-tomcat:用于嵌入式Tomcat服务器的启动器,可以使得开发者无需额外配置Tomcat服务器。
  • spring-boot-starter-validation:用于数据校验的启动器,提供了数据校验的功能。
  • spring-boot-starter-json:用于处理JSON数据格式的启动器,包含了使用Jackson或Gson进行JSON数据转换的功能。
  • spring-boot-starter-logging:用于日志记录的启动器,提供了日志记录的功能。

通过引入spring-boot-starter-web依赖项,开发者可以简单快速地构建和部署基于Spring MVC的Web应用程序。同时,Spring Boot的自动配置功能也会自动配置和初始化必要的组件,使得开发过程更加简化和便捷。

关于groupId、artifactId和version的书写规则

在Maven项目中,groupId、artifactId和version是用于唯一标识和定位一个依赖项的三个重要元素。它们的书写规则如下:

1. groupId(组织或公司的唯一标识)
   通常使用反向域名的方式作为groupId,例如:com.example
   避免使用过于通用的groupId,以免与其他项目冲突

2. artifactId(项目或模块的唯一标识)
   artifactId用于唯一标识一个项目或模块
   应该是简短、描述性的名字,通常使用小写字母、连字符或下划线进行命名,例如:spring-boot-starter-web

3. version(项目的版本号)
   version用于标识一个特定版本的项目或模块
   应该按照特定的版本号规则进行命名,例如:1.0.0或1.0-SNAPSHOT
   推荐使用语义化版本号规则,即MAJOR.MINOR.PATCH,例如:2.1.0

总而言之,正确书写groupId、artifactId和version可以确保依赖项的唯一性和可管理性,同时也方便其他开发者理解和使用你的项目。

2        application.properties

application.properties是Spring Boot应用程序中常用的配置文件之一。它可以用于配置应用程序的属性和行为。下面是对application.properties配置文件的简析:

  1. 键值对格式:application.properties配置文件使用键值对的格式,每个配置项由键和值组成,中间使用等号(=)分隔。例如:server.port=8080

  2. 属性的配置:配置文件中的键表示属性的名称,值表示属性的取值。可以配置各种类型的属性,包括基本类型、字符串、列表等。

  3. 优先级:application.properties文件中的配置项会覆盖内置的默认值和其他配置文件中的配置项。可以通过在启动时指定spring.config.namespring.config.location属性来指定自定义配置文件的名称和路径。

  4. 多环境配置:可以在application.properties文件中使用spring.profiles.active属性来指定当前使用的环境配置。可以根据不同的环境配置不同的属性值。

  5. 变量替换:在配置文件中可以使用${key}的形式引用其他配置项的值,实现变量的替换。例如:app.name=MyApp,然后可以在其他配置项中使用${app.name}来引用该值。

  6. 注释:可以使用#!作为注释符号,注释掉不需要的配置项,以提高配置文件的可读性。

  7. 外部化配置:application.properties文件支持外部化配置,可以通过文件系统、环境变量、命令行参数等方式来指定配置文件的位置和优先级。

总之,application.properties配置文件是Spring Boot应用程序中常用的用于配置应用程序属性和行为的文件,通过键值对的形式配置各种属性,并支持多环境配置和变量替换等功能。

3       yaml文件与properties配置文件的区别

YAML(YAML Ain't Markup Language)和properties文件是两种常见的配置文件格式,它们在语法和用法上有一些区别。

1. 语法结构:YAML使用缩进和冒号来表示结构和层级关系,而properties文件使用等号或冒号来分隔键和值。YAML使用空格作为缩进,而properties文件一般不使用缩进
   YAML实例

server:
  port: 8080
  name: my-app
 

Properties实例

server.port=8080
server.name=my-app
 

2. 层级关系:YAML支持多层嵌套,可以表示更复杂的数据结构,而properties文件只能以扁平的方式存储键值对。

YMAL实例

server:
  database:
    url: jdbc:mysql://localhost:3306/mydb
    username: root
    password: password123
 

Properties实例

server.database.url=jdbc:mysql://localhost:3306/mydb
server.database.username=root
server.database.password=password123
 

3. 数据类型:YAML可以表示更多的数据类型,如字符串、整数、浮点数、布尔值、日期等,而properties文件只能存储字符串类型的值。

YAML实例

server:
  port: 8080
  timeout: 30
  enabled: true
  start-date: 2022-01-01
 

Properties实例

server.port=8080
server.timeout=30
server.enabled=true
server.start-date=2022-01-01
 

总之,YAML适用于更复杂的配置需求和数据结构,支持嵌套和多种数据类型,而properties文件适用于简单键值对配置。选择哪种格式取决于你的需求和个人偏好。在Spring Boot中,可以根据需要使用两者之一作为配置文件格式。

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