Heim  >  Artikel  >  Java  >  Detaillierte Einführung in die SpringBoot2-Konfiguration (Codebeispiel)

Detaillierte Einführung in die SpringBoot2-Konfiguration (Codebeispiel)

不言
不言nach vorne
2019-02-19 15:56:012408Durchsuche

Dieser Artikel bietet Ihnen eine detaillierte Einführung (Codebeispiel) zur SpringBoot2-Konfiguration. Ich hoffe, dass er für Freunde hilfreich ist.

1. Eigenschaften und Yaml

SpringBoot unterstützt zwei Konfigurationsdateien, Eigenschaften und Yaml application.properties/application.yml

Yaml ist einfach zu verwenden

1.Yaml-Einführung

Yaml ist datenzentriert und besser für Konfigurationsdateien geeignet als JSON und XML

2.Yaml-Grundsyntax

k: v: Auf ein Schlüssel-Wert-Paar in der Form : muss ein Leerzeichen folgen
Einzug mit Leerzeichen zur Steuerung hierarchischer Beziehungen
Groß- und Kleinschreibung beachten

Beispiel:

server:
  port: 8081 # 设置默认端口号
  servlet:
    path: /init

Anleitung schreibe den Wert

k: v Direkt schreiben

[Für Zeichenfolgen sind standardmäßig keine einfachen oder doppelten Anführungszeichen erforderlich]

"": Doppelte Anführungszeichen in der Zeichenfolge wird nicht maskiert;

'': Sonderzeichen werden maskiert, und die Sonderzeichen sind letztendlich nur gewöhnliche Zeichenfolgendaten

Objekt

k: v: Schreiben Sie das Objekt in die nächste Zeile. Die Beziehung zwischen Attributen und Werten

Zum Beispiel:

 persion:
          name: zhangsan
          age: 10

Inline-Schreiben:

persion: {name: zhangsan,age: 10}

Array (List, Set, Map)

Gewöhnliches Array, Liste, Set verwendet - Wert, um ein Element im Array darzustellen

arrays:
  - arrays1 
  - arrays2  
  - arrays3

Map verwendet die Form von k: v, um

map:
  k1: v1
  k2: v2
  k3: v3

Konfigurationsdateiinjektion verwenden

Abhängigkeiten in pom.xml einführen, die vom Annotationsprozessor verwendet werden, um seine eigenen Metadaten zu generieren

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

Entitätsklasse:

/**
 * persion类
 */
@Component
@ConfigurationProperties(prefix = "persion")
public class Persion {
    private String name;
    private int age;
    private boolean isMan;
    private Date birth;
    private String[] hobbys;
    private Map<String,String> skills;
    private List<String> enjoys;

    // 省略getter setter toString
}

YAML-Konfiguration:

persion:
  name: zhangsan
  age: 20
  isMan: true
  birth: 1997/11/12
  hobbys:
    - 篮球
    - 足球
    - 乒乓球
  skills:
    java: javase
    python: ai
  enjoys:
    - eating
    - running
    - playgames

Test Klasse

@Autowired
    Persion persion;

    @Test
    public void contextLoads() {
        System.out.println(persion);
    }

2. Serverkonfiguration

Port ändern:

server.port=8081

Kontextzugriffspfad ändern, SpringBoot-Standard Beispielpfad ist „/“:

server.servlet.context-path=/base

Gemeinsame Serverkonfiguration

server.port:SpringBoot监听端口
server.error.path:错误处理路径
server.servlet.context-path:配置SpringBoot默认上下文路径

Drei Protokollkonfigurationen

Protokollebene definieren

Protokollebene ERROR WARN DEBUF INFO TRACE Ebene von hoch nach niedrig

# 输出日志级别 ERROR WARN DEBUF INFO TRACE,日志只会打印当前级别,以及高于当前级别的日志
logging.level.root=info

Protokoll in Datei ausgeben

# 输出日志到文件
logging.file=/my.log

Protokollausgabeformat definieren
Protokollformatausgabe an die Konsole:

logging.pattern.console=【%level %date %logger %thread %M %L %m】 %n

Protokollformatausgabe an die Protokolldatei:

# 定义输出到文件的日志格式
logging.pattern.file=【%level %date %logger %thread %M %L %m】 %n

Grundlegende Parameter des Protokollformats

属性    内容
%level    表示输出日志级别
%date    表示日期发生时的时间
%logger    用于输出Logger名字,包名+类名,{n}限定输出长度
%thread    当前线程名
%M    日志发生时方法的名字
%L    日志调用所在代码行
%m    日志消息
%n    日志换行

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die SpringBoot2-Konfiguration (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen