2015-07-15 12 views

cevap

4
@Autowired 
private ApplicationContext applicationContext;  
... 
this.applicationContext.getId(); 

, bu bulabilirsiniz:

# IDENTITY (ContextIdApplicationContextInitializer) 
spring.application.name= 
spring.application.index= 

Bahar Boot Reference Manual yılında. Varsayılan davranış bununla olduğu yerlerde

@Override 
public void initialize(ConfigurableApplicationContext applicationContext) { 
    applicationContext.setId(getApplicationId(applicationContext.getEnvironment())); 
} 

: o ContextIdApplicationContextInitializer sınıf için kaynak kodu ile

Ve izleyin

/** 
* Placeholder pattern to resolve for application name 
*/ 
private static final String NAME_PATTERN = "${vcap.application.name:${spring.application.name:${spring.config.name:application}}}"; 
13

herhangi özelliğe erişmek için @value notu kullanın gerekir Bir özellikler/YAML dosyasında ayarladığınızda:

@Value("${spring.application.name}") 
private String appName; 
+0

Bu, application.yml/application.propert için çalışır. ies, ancak bootstrap.yml için çalışmıyor. Yapılandırılması gereken bir şey var mı? bazı ek açıklamalarda, bir yerlerde mi? – Mubin

+0

"spring.config.name" öğesini "bootstrap" (varsayılan "uygulama") olarak geçersiz kılabilir veya "spring.config.location" öğesini kullanarak açıkça farklı bir yapılandırma belirterek daha ileri gidebilirsiniz. –

İlgili konular