Spring Boot的外部配置設定檔application.properties
讓我們可以設置一些環境參數。
但覺得很奇怪,以前在xml中屬性的名稱為駝峰式(lower camel case)的寫法,例如driverClassName
,
但Spring Boot的application.properties
中卻允許kebab case(減號分隔)的寫法如driver-class-name
。
查了一下才知道Spring Boot設計了Relaxed Binding將環境參數綁定至掛有@ConfigurationProperties
的bean中。
Relaxed Binding允許屬性名稱為駝峰式(driverClassName),減號分隔式(driver-class-name),底線分隔式(driver_class_name),大寫底線分隔(DRIVER_CLASS_NAME)(大寫底線分隔僅建議用來設定系統環境變數)等寫法。
不過官方建議用小寫減號分隔(kebab case)的寫法,例如
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
下面寫法也可以
spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
參考:
沒有留言:
張貼留言