1. 程式人生 > >Spring 注入 statistic final

Spring 注入 statistic final

問題背景

1、在spring配置中有一個【線上地址】的配置 
spring的配置

2、有一個工具類,可以讀取spring的配置 
工具類

需求:將spring的配置定義為一個常量

問題分析

1、常量定義原則:要用final和static修飾,定義時要初始化,初始化的時候不能通過呼叫方法的方式。 
2、此工具類在使用的時候,須先從spring容器中獲取。 
思路:先定義一個類,通過setter注入的方式獲取spring中的配置資訊,並將其定義為靜態屬性,然後定義常量類,把靜態屬性賦值給常量

解決方案

public class PropertiesConstants {

    /**
     * 線上資源地址
     * online-resource-path
     */
public static final String ONLINE_RESOURCE_PATH = PropertiesConstantsHelper.onlineResourcePath; } /** * 此類是將spring配置資訊轉換成靜態屬性 */ @Component class PropertiesConstantsHelper { static String onlineResourcePath; @Autowired public void setUploadProperties(UploadProperties uploadProperties) { onlineResourcePath = uploadProperties.getOnlineResourcePath(); } }