【java】静态方法里引用配置文件值

@Component
@PropertySource(value = "classpath:system.properties", encoding = "UTF-8")
public class ApiUtil {

    public static String sapSecret;

    @Value("${sap.secret}")
    public void setDatabase(String secret) {
        sapSecret = secret;
    }

    public static String getSignature(String message) {
        try {
            Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
            SecretKeySpec secret_key = new SecretKeySpec(sapSecret.getBytes("UTF-8"), "HmacSHA256");
            sha256_HMAC.init(secret_key);
            String hash = Base64.encode(sha256_HMAC.doFinal(message.getBytes("UTF-8")));
            return hash;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}

 

@Component
@PropertySource(value = "classpath:system.properties", encoding = "UTF-8")
public class ApiUtil {

    public static String sapSecret;

    @Value("${sap.secret}")
    public void setDatabase(String secret) {
        sapSecret = secret;
    }

    public static String getSignature(String message) {
        try {
            Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
            SecretKeySpec secret_key = new SecretKeySpec(sapSecret.getBytes("UTF-8"), "HmacSHA256");
            sha256_HMAC.init(secret_key);
            String hash = Base64.encode(sha256_HMAC.doFinal(message.getBytes("UTF-8")));
            return hash;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}

 

你可能感兴趣的:(java)