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ı?
cevap
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.
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
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
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
- 1. Tüm DOMElement özelliklerini almanın bir yolu var mı?
- 2. Tüm dosyaları bir masmavi gökgürültüsünden almanın bir yolu var mı
- 3. (ElasticSearch) NEST sorgusunda tüm kayıtları almanın bir yolu var mı?
- 4. Gerrit REST API'sından tüm işleri almanın bir yolu var mı?
- 5. Pydev'de REPL almanın bir yolu var mı?
- 6. Files.write (...) yöntemini almanın bir yolu var mı?
- 7. Yay verimi - Desteklenen işlemleri kısıtlamanın bir yolu var mı?
- 8. Bir Android Studio güncellemesini geri almanın bir yolu var mı?
- 9. Farklı CQ örneklerinden görevleri almanın/vermenin bir yolu var mı?
- 10. Genel for döngüsü: Yineleme bilgilerini almanın bir yolu var mı?
- 11. Java: Adına çerez almanın basit bir yolu var mı?
- 12. PHP'de kullanıcı tarafından bildirilen değişkenleri almanın bir yolu var mı?
- 13. Silverlight UI Element'i görüntü olarak almanın bir yolu var mı?
- 14. Yığının tepesinden parça almanın bir yolu var mı?
- 15. $ .ajax'ın varsayılan nesnesini almanın bir yolu var
- 16. Paket Kimliği'ni çalışma zamanında almanın bir yolu var mı?
- 17. Modern tarayıcılarda CSS XSS almanın bir yolu var mı?
- 18. Oracle: Son SQL sözdizimi hatalarını almanın bir yolu var mı?
- 19. İmzalı APK'dan anahtar karması almanın bir yolu var mı?
- 20. Heroku toolbelt'in bireysel bileşenlerini almanın bir yolu var mı?
- 21. "git revert head" efektlerini geri almanın bir yolu var mı?
- 22. C++ işlevinin içinde işlev adı almanın bir yolu var mı?
- 23. Otomatik olarak require.txt çıktı almanın bir yolu var mı?
- 24. Görüntü yenileme hızını programlı olarak almanın bir yolu var mı?
- 25. Kullanıcı cihazı kapattığında bildirim almanın bir yolu var mı?
- 26. PowerPoint sunusunda slaytın dizinini almanın doğrudan bir yolu var mı?
- 27. TStringGrid - "mevcut/seçili" satırı almanın basit bir yolu var mı?
- 28. Farenin altındaki kontrolü almanın hızlı bir yolu var mı?
- 29. s3 uri aws web konsolundan almanın bir yolu var mı?
- 30. Özniteliğe göre xml öğesini almanın bir yolu var mı?
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
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 a0>, ancak, yalnızca @ConfigurationProperties (önek = ...) 'tarafından yapılandırılmış genel üyeler için çalışır. –
Chris
Ö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 –