springboot中,properties配置方式,注入很方便。@Value注解就可以搞定,但是在yml配置文件中,使用同样的方式发现不行,目前暂时找到一个解决方法,至于为什么不行,后续再细细研究。
只有接触优秀的人,你才能变的更优秀 ------我瞎几把说的
- town.properties配置
town:
downloadUrl: {"com.lotus":"abc"}
- service 层注入
@Resource
private TownProperties town;
或者(注意: 这种写的时候,Town实体不能删除,删除了实体配置,这种方式在本人此情境下,是不能注入的)
@Value("${town.downloadUrl}")
private String downloadUrl;
- 实体
package com.basetnt.ad.game.xiaoxiaoqi.common.property;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;
/**
* @Desc
* @Date 2019/9/12 15:18
* @Author cui_yl
*/
@Component
@PropertySource("classpath:config/town.properties")
@ConfigurationProperties(prefix = "town")
public class Town {
public String downloadUrl;
public String getDownloadUrl() {
return downloadUrl;
}
public void setDownloadUrl(String downloadUrl) {
this.downloadUrl = downloadUrl;
}
}
- 使用方法
JsonObject object = JsonUtils.toJsonObject(town.getDownloadUrl());