2016-04-26 14 views
5

Spring için gerçekten yeni. Yaylı önyükleme ile sağlanan harici yapılandırma özelliğini kullanıyorum. İyi çalışıyor ve çoğu yapılandırma sınıflarında, genellikle yalnızca varsayılan değerlerde kullandım. Şimdi kullandığım yapılandırma özelliklerine genel bir bakış almak istiyorum. Bu, @Value(...) ile veya @ConfigurationProperties(prefix = ...) ile ayarlanmış tüm özellikleri bilmem gerektiği anlamına gelir. Bu bilgiyi Bahar'dan almanın bir yolu var mı? Bunu yansımalarla yapabilirim ama bence bu en iyi yol değil.Yay önyüklemede tüm yapılandırma özelliklerinin adlarını almanın bir yolu var mı?

+3

Yay önyüklemesindeki aktüatör işlevselliği bunları uç noktalardan biri olarak gösterecektir, böylece kaynağa bakıp nasıl yaptıklarını görebilirsiniz. – cjstehno

+0

Tamam, teşekkürler. [Configprops endpoint] 'i kullandım (https://github.com/spring-projects/spring-boot/blob/10012cfddc5479ee9a5cbe98bfe4f76483965bd1/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ ConfigurationPropertiesReportEndpoint.java), sınamak için , ancak, yalnızca @ConfigurationProperties (önek = ...) 'tarafından yapılandırılmış genel üyeler için çalışır. – Chris

+0

Özellikleri ve bunların Spring yapılandırma meta verilerini sergileyen üçüncü taraf Yay aktüatör uç noktasını deneyebilirsiniz. İsteğe bağlı filtreleme/içerir/hariç tutar: https://github.com/ethlo/spring-actuator-addons/tree/master/spring-actuator-config –

cevap

0

STS kullanıyorsanız, otomatik tamamlama özelliğine sahip application.properties dosyası için özel bir düzenleyici var. Eclipse kullanıyorsanız, kodda @Value ek açıklamalarını yapılandırmak ve kontrol etmek istediğiniz sınıfa gitmelisiniz.

+1

Teşekkürler, ama bu benim sorunumu çözmüyor. Programı myselve ile genişletmek veya her konfigürasyon girişini özellik dosyasına yazmadan genişleten diğer geliştiricilere vermek istiyorum. Bu yüzden, program başladıktan sonra varsayılan değerler de dahil olmak üzere tüm konfigürasyonların yeni bir özellik dosyasına yazılmasının mümkün olacağını umuyordum. STS editörünü kullanarak, tüm konfigürasyon özelliklerini bilerek el yazısını elle yazmam gerekiyor. – Chris

+0

META-INF/ek-yay-yapılandırma-metadata.json adlı bir dosya oluşturabilir ve içeriği şu şekilde ekleyebilirsiniz: {"properties": [{ "name": "my.att", "type" : "java.lang.String", "description": ekleyebilir Sende application.properties }]} " 'my.att' için bir açıklama": STS kullanma my.att = 20 Otomatik tamamlama, meta veri dosyasında sağlanan açıklama ile kullanılabilir. Daha fazla bilgi burada: https://docs.spring.io/spring-boot/docs/current/reference/html/configuration-metadata.html – Sigrist

+0

Bu programın geliştiricileri için olası bir yol. Ama istediğim, programın kullanıcılarına (özel editörler olmadan) bir varsayılan yapılandırmayı (örneğin, geçerli yapılandırmanın bozulması durumunda) yalnızca yapılandırma dosyasını silerek ve programı yeniden başlatarak yeniden oluşturmasına izin vermektir. Bu yüzden, bir varsayılan yapılandırma dosyası oluşturmak için üzerine yazabileceğim ve gerekli bilgileri alabileceğim bir sınıf olup olmadığını bilmem gerekiyor. – Chris

İlgili konular