SpringBoot配置文件properties和yml的实现

下面是关于SpringBoot配置文件(properties和yml)的实现攻略。

在SpringBoot应用中,配置文件(properties或yml)主要用于配置应用程序的参数。SpringBoot的默认配置文件位置是 “/src/main/resources/application.properties” 或“/src/main/resources/application.yml”。以下是详细的配置方法:

1. properties文件配置

在properties中,键和值之间使用等号(=)进行分隔,可以看下面的示例代码:

server.port=8080
server.servlet.context-path=/myapp
spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root123

注意,在使用SpringBoot时,可以使用{“}和${}占位符。例如:

server.host=${host:localhost}

这里的表达式 ${host:localhost} 会首先尝试从配置文件中读取“host”参数,如果找不到该参数,则默认使用“localhost”作为主机名

2. yml文件配置

在yml文件中,使用缩进代替等号分隔键和值,使用冒号分隔键和值。以下是一个示例的代码:

server:
port: 8080
servlet:
context-path: /myapp
spring:
datasource:
url: jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&useSSL=false
username: root
password: root123

此外,还可以在yml文件中使用列表和嵌套对象的方式组织数据。例如:

my:
team:
- name: Tom
age: 20
- name: Mary
age: 22

这里的数据是一个“my.team”列表,其中包含两个对象。每个对象都有一个“name”属性和一个“age”属性。

3. 加载及应用

Spring Boot会自动读取默认的配置文件“application.properties”或“application.yml”,不需要任何其他配置。如果要加载其他配置文件,可以通过在命令行上使用--spring.config.name或--spring.config.location参数来指定。例如:

java -jar myproject.jar --spring.config.name=myapp --spring.config.location=classpath:/myapp.yaml,/yourpath/myapp.yaml

在SpringBoot应用中,可以通过@Value注解或@ConfigurationProperties注解来获取配置文件中的值。例如,以下示例显示了如何使用@ConfigurationProperties注解从配置文件中加载jdbc相关的属性。

4. 示例

4.1 前置条件

首先,新建一个SpringBoot的Demo项目,并引入Maven依赖:

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
</dependency>

4.2 使用properties文件

在“/src/main/resources”目录下新建“application.properties”文件,并添加以下内容:

# 设置服务器端口
server.port=8080

# 设置Servlet上下文路径
server.servlet.context-path=/myapp

# 设置JDBC连接池
spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root123

Java代码中使用@Value注解读取配置文件中的属性,如下所示:

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component
public class AppConfig {

    @Value("${server.port}")
    private String port;

    @Value("${server.servlet.context-path}")
    private String contextPath;

    @Value("${spring.datasource.url}")
    private String url;

    @Value("${spring.datasource.username}")
    private String username;

    @Value("${spring.datasource.password}")
    private String password;

    // getter & setter
}

只需将以上代码添加到应用程序中,即可使用@Value注解从配置文件中获取属性。

4.3 使用yml文件

在“/src/main/resources”目录下新建“application.yml”文件,并添加以下内容:

server:
  port: 8080
  servlet:
    context-path: /myapp
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root
    password: root123

在Java代码中使用@ConfigurationProperties注解读取配置文件中的属性,如下所示:

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
@ConfigurationProperties(prefix = "spring.datasource")
public class DataSourceProperties {

    private String url;
    private String username;
    private String password;

    // getter & setter
}

只需将以上代码添加到应用程序中,即可使用@ConfigurationProperties注解从配置文件中获取属性。

至此,SpringBoot应用程序中使用properties和yml文件进行配置的方法已经介绍完了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot配置文件properties和yml的实现 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • Java分支结构程序设计实例详解

    Java分支结构程序设计实例详解 本文将介绍Java分支结构程序设计的实例与应用。主要包括if语句、switch语句和三元运算符的使用方法、注意事项、实例分析等。 if语句 if语句是最常用的分支结构,用于根据不同情况执行不同的代码块。它的语法结构如下: if (布尔表达式) { // 如果布尔表达式为true,则执行该代码块 } 其中布尔表达式可以是任何返…

    Java 2023年5月23日
    00
  • JavaSwing基础之Layout布局相关知识详解

    JavaSwing是用于开发桌面应用程序的一套GUI工具包,其中Layout布局是Swing中常用的一种布局方式。此篇文章将详细讲解Layout布局的相关知识,为JavaSwing的使用提供帮助。 布局方式 Swing提供了多种布局方式,其中常见的有FlowLayout、BorderLayout、GridLayout、GridBagLayout、BoxLay…

    Java 2023年5月26日
    00
  • IDEA2022中部署Tomcat Web项目的流程分析

    下面是关于“IDEA2022中部署Tomcat Web项目的流程分析”的完整攻略: 1. 安装Tomcat 首先需要在本地安装Tomcat。在官网下载Tomcat安装包并进行安装。安装完成后,打开IDEA,进入“File -> Settings -> Build, Execution, Deployment -> Application S…

    Java 2023年6月2日
    00
  • Spring populateBean属性赋值和自动注入

    Spring框架是一款高效的Java开发框架,其优秀的依赖注入机制使得程序员们可以更加快速和高效的进行开发。其中,populateBean属性赋值和自动注入是Spring框架中最为常见的两种方式,下面将对这两种方式进行详细的讲解。 1. populateBean属性赋值 populateBean属性赋值是Spring框架中最为常用的一种方式,其作用是将数据传…

    Java 2023年6月15日
    00
  • 海量数据去重排序bitmap(位图法)在java中实现的两种方法

    海量数据去重排序bitmap(位图法)是一种高效的数据处理方法,可以有效提升数据处理的效率。在Java中实现海量数据去重排序bitmap(位图法)可以采用以下两种方法: 1. 使用Java BitSet类实现位图法 1.1 初始数据的准备 在使用位图法进行去重排序之前,需要先将原始数据以字符串的形式进行处理,并按照一定规则转化为二进制码。在这个例子中,我们将…

    Java 2023年5月26日
    00
  • 什么是并发集合?

    什么是并发集合? 并发集合是一种特殊的数据结构,它可以被多个线程安全的访问和修改。在多线程编程的场景下,只有使用并发集合才能确保线程安全,避免多个线程在对同一个数据结构进行并发操作时引发的竞态条件和其他并发错误。 并发集合与传统集合不同的是,常用的集合容器如List、Set、Map等在多线程场景下是非线程安全的,必须使用synchronized等操作来保证线…

    Java 2023年5月10日
    00
  • Java switch 语句如何使用 String 参数

    Java中的switch语句通常用于针对不同的情况执行不同的操作,常用于替代多个if-else语句的情况。在早期版本中,switch语句只支持整数和枚举类型的参数,但从Java 7版本开始,可以使用字符串参数。下面详细描述如何在Java switch语句中使用字符串参数: 1. switch语句如何使用String类型的参数 为了使用字符串参数,可以在Jav…

    Java 2023年5月27日
    00
  • javaweb项目如何实现手机短信登录

    下面我来详细讲解如何实现手机短信登录的完整攻略: 步骤一:申请短信服务 要实现手机短信登录,首先需要申请一个短信服务供应商提供的服务,通常情况下这些服务都需要扣除一定的费用,具体费用因服务供应商而异。以下是两种比较常用的短信服务供应商: 腾讯云短信服务 腾讯云短信服务提供快速、高可靠、低成本、全网覆盖的短信验证码发送服务。首先,你需要去 腾讯云官网 进行注册…

    Java 2023年6月15日
    00
合作推广
合作推广
分享本页
返回顶部