spring @PropertySource 搭配 @ConfigurationProperties從特定配置文件設置屬性

spring @PropertySource 搭配 @ConfigurationProperties從配置文件設置屬性

代碼示例以及說明


@Component
@PropertySource("classpath:ali.properties")
@ConfigurationProperties(prefix = "ali.pay")
@Data
public class AliPayConfig {

    private String appId;

    /**
     * 生成公鑰時對應的私鑰(填自己的)
     */

    private String privateKey;
    /**
     * 生成公鑰
     */

    private String publicKey;


    /**
     * 簽名方式
     */

    private String signtype;
    /**
     * 編碼
     */

    private String charset;
    /**
     * 返回格式
     */

    private String format;

    /**
     * 支付寶網關(注意沙箱alipaydev,正式則爲 alipay)不需要修改
     */

    private String gatewayUrl;

    /**
     * 服務器地址前綴
     */

    private String baseUrl;

    /**
     * 服務器異步通知頁面路徑 需http://或者https://格式的完整路徑,不能加?id=123這類自定義參數,必須外網可以正常訪問
     */

    private String notifyUrl;

    /**
     * 頁面跳轉同步通知頁面路徑 需http://或者https://格式的完整路徑,不能加?id=123這類自定義參數,必須外網可以正常訪問 商戶可以自定義同步跳轉地址
     */

    private String returnUrl;

}

以上是一個支付寶的配置類,@PropertySource說明讀取的屬性文件源。@ConfigurationProperties(prefix = "ali.pay")指定前綴爲ali.pay@Datalombok標籤,替代setter和getter方法。

配置文件ali.properties示例:


ali.pay.appId=1

這樣你就可以在你的service類裏面依賴注入該配置類並使用了。 好處是這樣的配置單獨放在一個文件裏面,清晰易維護。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章