チュートリアルの春BOOT2シリーズ(E)| YAML詳細プロフィール

YAML

カスタムロード属性

まず、この古い記事は表示されません、SpringBootプロジェクトを構築春ブーツを構築するためにIDEAプロジェクトを使用します

まず、プロジェクトルートディレクトリSRCで、次のカスタムプロパティを追加>>リソース>>ファイルをapplication.properties:

# 防止读取乱码
spring.http.encoding.charset=UTF-8
# 项目启动端口
server.port=9999
# 自定义配置
com.nasus.author.name=一个优秀的废人
com.nasus.article.title=SpringBoot配置文件详解

@valueノートを使って設定ファイルの属性を読み取ります:

package com.nasus.bean;

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

/**
 * Project Name:springboot_properties_demo <br/>
 * Package Name:com.nasus.properties <br/>
 * Date:2019/1/28 20:59 <br/>
 * <b>Description:</b> TODO: 描述该类的作用 <br/>
 * @author <a href="[email protected]">nasus</a><br/>
 */

@Data
@Component
public class PropertiesBean {

    @Value("${com.nasus.author.name}")
    private String name;

    @Value("${com.nasus.article.title}")
    private String title;

    @Value("${com.nasus.doing}")
    private String desc;

}

新しいカスタムプロパティの負荷テストコントローラの後、次のように:

package com.nasus.controller;

import com.nasus.bean.PropertiesBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * Project Name:springboot_properties_demo <br/>
 * Package Name:com.nasus.controller <br/>
 * Date:2019/1/28 21:41 <br/>
 * <b>Description:</b> TODO:  测试自定义属性加载<br/>
 *
 * @author <a href="[email protected]">nasus</a><br/>
 */
@RestController
@RequestMapping("/test")
public class TestController {

    @Autowired
    private PropertiesBean propertiesBean;

    @GetMapping("/getInfo")
    public PropertiesBean getInfo(){
        return propertiesBean;
    }
}

http:// localhost:8080にアクセス/テスト/ GETINFOビューローディング結果:

テスト結果

属性プロファイルが読み出され、@value注釈を追加した後、見ることができます。以前は、おそらく我々はまた、読み出した属性のプロファイルを読み込むためにクラスを作成するために特殊なツールを必要とし、今の春に、私たちは直接、あまりにも簡単ではないことができ、@valueが読むことができるようになります使用することができます。本実施形態では、このソース:GitHubの住所

パラメータ間の参照

次のようにプロファイルのコードは次のとおりです。

# 防止读取乱码
spring.http.encoding.charset=UTF-8
# 项目启动端口
server.port=9999
# 自定义配置
com.nasus.author.name=一个优秀的废人
com.nasus.article.title=SpringBoot配置文件详解

com.nasus.doing=${com.nasus.author.name}写文章《${com.nasus.article.title}》

最後のパラメータの設定は、以下のように、試験結果は最初の2つの構成パラメータを使用していることがわかります。
テスト結果

乱数を使用して

要件を予測時々、我々はいくつかのランダムな、と言う、安全性およびランダム構成サーバーポートの番号、およびログインキーを設定する必要があるかもしれません。その後、我々は例えば、乱数を設定するには、ランダムな属性SpringBootを使用することができます。

# 随机字符串
com.nasus.article.value=${random.value}
# 随机int
com.nasus.article.number=${random.int}
# 随机long
com.nasus.article.bignumber=${random.long}
# 10以内的随机数
com.nasus.article.test1=${random.int(10)}
# 10-20的随机数
com.nasus.article.test2=${random.int[10,20]}

複数の設定ファイルを使用します

何度も我々はすべての開発プロジェクトの多くは、このようなテスト環境、開発環境と本番環境として、環境を設定する必要があります。異なる環境では、我々はこれらの3つの環境に基づいて3つの新しい設定ファイルを、次のされているために別の設定ファイルを使用する必要があります。

application-dev.properties:開発環境
application-test.properties:テスト環境
application-prod.properties:本番環境

项目中默认的配置文件是 application.properties 。这时我们可以根据自己的环境去使用相应的配置文件,比如说,项目各个环境的端口必须不一样。那我们可以这样配置:
application-dev.properties:开发环境

server.port=6666

application-test.properties:测试环境

server.port=7777

application-prod.properties:生产环境

server.port=8888

假如,现在我打包上线,那就必须用生产环境的配置文件了,这时我们可以在 默认的配置文件 application.properties 中加入以下配置即可

spring.profiles.active=prod

配置数据库

SpringBoot 的配置文件有两种格式,一种是 .properties 格式(以上栗子都是用的这种)还有一种用的是 .yaml 格式。以下是用 yaml 方式配置。这两种格式并无好坏之分,纯看个人使用习惯。我就比较喜欢 yaml 格式,因为看起来比较简洁。

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=true
    username: 你的数据库名称
    password: 你的数据库密码

  jpa:
    hibernate:
      ddl-auto: update   #ddl-auto:设为update 表示每次都重新建表
    show-sql: true

注意事项

  1. 使用 yaml 格式需要注意一点就是 键值对冒号后面,必须空一格
  2. application.properties 配置中文值的时候,读取出来的属性值会出现乱码问题。但是 application.yml 不会出现乱码问题。原因是,Spring Boot 是以 iso-8859 的编码方式读取 application.properties 配置文件。
    解决第二点,只需加入 spring.http.encoding.charset=UTF-8 配置即可。

后语

つまり、そこにその使用の多くは、ある場合、またはあなたの深さの練習を使用して深さの多く必要とする、もちろん、理解して使用するためにもう少しわずか数SpringBoot使用プロファイルを導入よりも、すべてのI SpringBootの設定ファイルです。最後に、PythonやJavaは注意の興味を持ってくださいプレス2次元コードの波です、私はより多くの人々が知っているように、あなたはこの論文は、ヘルプの少しを持っていると思う場合でも、してください助けスポット格好良い、あなたの価値を持ってしようとします。

あなたがここに表示された場合、あなたはこの記事を気に入って、前方に、親指ください。マイクロチャンネルサーチ「良いバスケットケース」、懸念は「返信した後、1024年には、」あなたのJavaチュートリアルの完全なセットを提供します。

チュートリアル抜粋

おすすめ

転載: www.cnblogs.com/nasus/p/12149653.html