在spring boot 中,我們可以通過properties或者yaml檔案來為應用程式添加自定義的配置資訊。以redis的配置資訊為例:
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.timeout=5000
)來注入配置檔案資訊,然後通過如下方式注入到bean的對應的屬性中
@Value("spring.redis.host")
private String host;
@Value("spring.redis.port")
private int port;
@Value("spring.redis.timeout")
private int timeout;
但這種方式還是過于累贅,實際上我們可以通過引入yaml檔案(類似于json的結構)進行配置,在建立spring boot 項目時會自動引入snakeyaml,進而自動實作對yaml的支援。我們隻需要進行如下配置即可:
application.yaml
redis:
host: 127.0.0.1
port: 6379
timeout: 5000
建立一個RedisSettings的bean:
@Component
@Data
@ConfigurationProperties(prefix = "redis")
public class RedisSettings {
private String host;
private int port;
private int timeout;
}
最後在使用的入口注入即可
@Autowired
private RedisSettings redisSettings;