配置文件:oss-config.yml application.yml
使用@Value 始終無法讀取。
解決方法
1.修改oss-config.yml 文件名爲 application-ossConfig.yml
2.application.yml文件添加
引入自定義的配置文件,剛開始自定義的配置文件名爲application-oss-config.yml死活引不進去,現在想想可能是‘-’被spring認爲是一個分隔符!!!!
3.自定義application-ossConfig.yml文件內容,類似這樣,
自定義配置文件中,我引用了變量,例如這樣:
前綴一定要加上,否則獲取不到!!!!
4.配置讀取類這樣寫
@Value 一定要寫完整,否則獲取不到!!!!
有人就會問了,爲什麼不用
ConfigurationProperties(prefix = "alibaba.cloud.oss.default-imag”),指定前綴,上述類中直接用@Value(“${pub-endpoint}”)??!媽的,勞資試了,讀取不到,無奈之舉!!!
估計還有人要說可以這樣配:
爸爸也試了,不行,雖然開發環境正常,但是部署時肯定要配置文件外置啊,
這樣配外置配置文件丫的根本不生效!!!!
最後一句:spring boot項目啓動時,外置配置文件只認application.yml(properties),、、
什麼bootstap.yml,亂七八糟自定異的配置文件,springboot 根本不鳥一下,除非你在application.properties(yml)顯示引入進來!
還有,被引入application.yml 的自定義配置文件是允許這樣的:
alibaba: cloud: oss: default: # #必要初始化屬性 # #公網訪問地域節點名 # pub-endpoint: oss-cn-hangzhou.aliyuncs.com # #ECS內網訪問節點名 # ecs-endpoint: oss-cn-hangzhou-internal.aliyuncs.com #============================== #此賬號擁有該bucket及bucket文件下的所有控制權,包括但不限於文件上傳、下載、刪除等 #該賬號不具有創建bucket創建權限 access-key-id: LTAIVCZ3BRMEvzjE access-key-secret: u1YX1DfpEis7CjYfPpTxvWxDlDpBZf # #不能添加httpL://字段,默認綁定端口爲項目的啓動端口,需要同步修改 # callback-domain: 36psci.natappfree.cc #格式:詳情查看controller中的文件回調接口 callback-url: ${alibaba.cloud.oss.default.callback-domain}${server.servlet.context-path}/file/upload-callback #建立連接的超時時間(單位:毫秒)。默認爲50000毫秒 connection-timeout: 10000 #可重試的請求失敗後最大的重試次數。默認爲3次 max-error-retry: 5 #=======以下爲圖片配置====== image: #oss控制檯,bucket級別自定義圖片處理規則,如是否帶水印、是否模糊等 custom-style-name: style/quanwei-logo --- #所有非ali環境一律使用此配置 spring: profiles: localhost alibaba: cloud: oss: default: #必要初始化屬性 #ECS內網訪問地域節點名 endpoint: oss-cn-hangzhou.aliyuncs.com #不能添加httpL://字段,默認綁定端口爲項目的啓動端口,需要同步修改 callback-domain: 36psci.natappfree.cc --- #aliyun正式環境 spring: profiles: GA alibaba: cloud: oss: default: #必要初始化屬性 #ECS內網訪問地域節點名 endpoint: oss-cn-hangzhou-internal.aliyuncs.com #不能添加httpL://字段,默認綁定端口爲項目的啓動端口,需要同步修改 callback-domain: alibababa