package com.ard.utils.mqtt; import org.springframework.beans.factory.config.YamlPropertiesFactoryBean; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; import org.springframework.stereotype.Component; import java.util.Objects; import java.util.Properties; /** * @Description: 获取配置信息 * @ClassName: PropertiesUtil * @Author: 刘苏义 * @Date: 2023年06月06日9:40 * @Version: 1.0 **/ @Component public class PropertiesUtil { public static String MQTT_HOST; public static String MQTT_CLIENT_ID; public static String MQTT_USER_NAME; public static String MQTT_PASSWORD; public static String MQTT_TOPIC; public static Integer MQTT_TIMEOUT; public static Integer MQTT_KEEP_ALIVE; public static Boolean MQTT_ENABLED; static { MQTT_HOST = getYmlNew("spring.mqtt.host"); MQTT_CLIENT_ID = getYmlNew("spring.mqtt.clientId"); MQTT_USER_NAME = getYmlNew("spring.mqtt.username"); MQTT_PASSWORD = getYmlNew("spring.mqtt.password"); MQTT_TOPIC = getYmlNew("spring.mqtt.topic"); MQTT_TIMEOUT = Integer.valueOf(Objects.requireNonNull(getYmlNew("spring.mqtt.timeout"))); MQTT_KEEP_ALIVE = Integer.valueOf(Objects.requireNonNull(getYmlNew("spring.mqtt.keepalive"))); MQTT_ENABLED = Boolean.valueOf(getYmlNew("spring.mqtt.enabled")); } public static String getYmlNew(String key) { Resource resource = new ClassPathResource("application.yml"); Properties properties; try { YamlPropertiesFactoryBean yamlFactory = new YamlPropertiesFactoryBean(); yamlFactory.setResources(resource); properties = yamlFactory.getObject(); } catch (Exception e) { e.printStackTrace(); return null; } assert properties != null; return properties.get(key).toString(); } }