首頁  >  文章  >  Java  >  SpringBoot2配置的詳細介紹(程式碼範例)

SpringBoot2配置的詳細介紹(程式碼範例)

不言
不言轉載
2019-02-19 15:56:012391瀏覽

這篇文章帶給大家的內容是關於SpringBoot2 配置的詳細介紹(程式碼範例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

一.Properties與Yaml

SpringBoot支援properties與yaml兩種設定檔application.properties/application.yml

yaml簡單使用

1.yaml簡介

yaml是以資料為中心的,比json,xml更適合做設定檔

2.yaml基本語法

k: v:形式的鍵值對,:後面必須有空格
以空格縮進來控制層級關係
大小寫敏感

範例:

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

值的寫法

k: v 直接書寫

【字串預設不用加上單引號或雙引號】

"":雙引號;不會轉義字串裡面的特殊字元;

'':單引號;會轉義特殊字符,特殊字符最終只是一個普通的字符串資料

對象

k: v:在下一行來寫對象的屬性和值的關係

例如:

 persion:
          name: zhangsan
          age: 10

行內寫法:

persion: {name: zhangsan,age: 10}

數組(List,Set,Map)

普通數組,List, Set 使用-值來表示陣列中的一個元素

arrays:
  - arrays1 
  - arrays2  
  - arrays3

Map使用k: v的形式來表示

map:
  k1: v1
  k2: v2
  k3: v3

使用設定檔注入

在pom.xml引入依賴,用於註解處理器產生自己的元資料

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

實體類別:

/**
 * 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設定:

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

測試類別

@Autowired
    Persion persion;

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

#二.伺服器設定

更改連接埠:

server.port=8081

更改上下文存取路徑,SpringBoot預設範文路徑為「/」:

#

server.servlet.context-path=/base

常見的伺服器設定
server.port:SpringBoot监听端口
server.error.path:错误处理路径
server.servlet.context-path:配置SpringBoot默认上下文路径

三日誌配置

定義日誌等級

日誌等級ERROR WARN DEBUF INFO TRACE 等級從高到低

###
# 输出日志级别 ERROR WARN DEBUF INFO TRACE,日志只会打印当前级别,以及高于当前级别的日志
logging.level.root=info
######輸出日誌到檔案######
# 输出日志到文件
logging.file=/my.log
#######定義日誌輸出格式#########輸出到控制台日誌格式:######
logging.pattern.console=【%level %date %logger %thread %M %L %m】 %n
#######輸出到日誌檔案的日誌格式:######
# 定义输出到文件的日志格式
logging.pattern.file=【%level %date %logger %thread %M %L %m】 %n
#### ##日誌格式基本參數######
属性    内容
%level    表示输出日志级别
%date    表示日期发生时的时间
%logger    用于输出Logger名字,包名+类名,{n}限定输出长度
%thread    当前线程名
%M    日志发生时方法的名字
%L    日志调用所在代码行
%m    日志消息
%n    日志换行
######

以上是SpringBoot2配置的詳細介紹(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除