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日

相关文章

  • Spark学习笔记之Spark SQL的具体使用

    Spark学习笔记之Spark SQL的具体使用 简介 Spark SQL是Spark提供的分布式SQL查询引擎,通过Spark SQL,我们可以使用SQL语法来查询非关系型数据、结构化数据、CSV文件等。Spark SQL目前支持Hive查询语法和Spark SQL语法,也允许用户进行自定义函数、聚合函数等操作。 安装 要使用Spark SQL,我们需要先…

    Java 2023年5月26日
    00
  • Java实现AES加密算法的简单示例分享

    那么我将详细讲解“Java实现AES加密算法的简单示例分享”的完整攻略,包括实现步骤,示例说明等。 第一步:引入依赖 Java实现AES加密算法需要引入如下两个依赖: <dependency> <groupId>javax.crypto</groupId> <artifactId>javax.crypto-ap…

    Java 2023年5月26日
    00
  • SpringBoot整合Mybatis简单实现增删改查

    下面是关于SpringBoot整合Mybatis实现增删改查的详细攻略: 1. 环境搭建 在开始之前,你需要在本地安装好以下软件: JDK 1.8或以上版本 Maven MySQL数据库 在安装好上述软件后,你可以新建一个SpringBoot项目,这里使用的是IntelliJ IDEA,你可以通过IDEA创建SpringBoot项目并选择添加Mybatis …

    Java 2023年5月19日
    00
  • 浅谈jsp中的9个隐含对象

    接下来我将为大家详细讲解“浅谈JSP中的9个隐含对象”的完整攻略。 1. JSP的9个隐含对象 在JSP页面中,有9个隐含对象,他们分别是: request:表示客户端发来的请求,被封装成了request对象,在JSP页面中可以通过request对象访问请求中的参数信息。 response:表示服务器对请求做出的响应,被封装成了response对象,在JSP…

    Java 2023年6月15日
    00
  • Java编程接口详细

    Java编程接口详细攻略 什么是Java编程接口(API) Java编程接口(API)是Java中非常重要的概念。它是一组Java类、接口和方法的集合,使得Java程序员可以轻松地使用某些功能或模块。API文档包含了Java为程序员提供的应用编程接口的详细介绍、类的功能描述和方法使用说明等。 Java API文档 Java API文档通常由类和方法的文档组成…

    Java 2023年5月19日
    00
  • Java如何发起http请求的实现(GET/POST)

    下面是详细的Java发起HTTP请求的实现攻略: 1. 准备工作 在Java中发起HTTP请求需要使用到java.net包中的一些类和方法。因此,我们需要先导入以下两个类: import java.net.HttpURLConnection; import java.net.URL; 2. 发起GET请求 下面我们通过一个简单的示例来讲解如何使用Java发起…

    Java 2023年5月26日
    00
  • Java并发编程之创建线程

    当进行Java并发编程时,创建线程是其中非常重要的一个步骤。本篇攻略将为你详细介绍Java中创建线程的各种方式和技巧,并提供两条实际例子。 一、Java中创建线程的方式 Java中创建线程有以下几种方式: 1. 继承Thread类 此方法需要继承Java中的Thread类,并重写其run()方法来定义线程的行为。 public class MyThread …

    Java 2023年5月23日
    00
  • Java读写ini文件代码示例

    下面我将为您详细讲解如何使用Java读写ini文件,并提供两条示例代码。 什么是ini文件? INI(缩写来自initialize),是一种配置文件的文件名扩展名,在Windows系统中广泛使用,以ASCII编码存储。INI文件是一种键值对(key-value)形式的简单文本文档,其基本格式是: [Section] key1=value1 key2=valu…

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