Bahar - Ek Açıklama Tabanlı Yapılandırma
İlkbahar 2.5'ten başlayarak bağımlılık enjeksiyonunu kullanarak yapılandırmak mümkün hale geldi annotations. Bu nedenle, bir fasulye kablolamasını tanımlamak için XML kullanmak yerine, ilgili sınıf, yöntem veya alan bildirimindeki ek açıklamaları kullanarak fasulye yapılandırmasını bileşen sınıfının kendisine taşıyabilirsiniz.
Ek açıklama ekleme, XML enjeksiyonundan önce gerçekleştirilir. Bu nedenle, ikinci konfigürasyon, her iki yaklaşımla bağlanan özellikler için ilkini geçersiz kılacaktır.
Ek açıklama kablolaması varsayılan olarak Bahar kapsayıcısında açık değildir. Bu nedenle, açıklama tabanlı kablolamayı kullanmadan önce, bunu Spring yapılandırma dosyamızda etkinleştirmemiz gerekecek. Bu nedenle, Spring uygulamanızda herhangi bir ek açıklama kullanmak istemeniz durumunda aşağıdaki yapılandırma dosyasını dikkate alın.
<?xml version = "1.0" encoding = "UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:annotation-config/>
<!-- bean definitions go here -->
</beans>
<Context: annotation-config /> yapılandırıldıktan sonra, Spring'in değerleri özelliklere, yöntemlere ve yapıcılara otomatik olarak bağlaması gerektiğini belirtmek için kodunuza açıklama eklemeye başlayabilirsiniz. Nasıl çalıştıklarını anlamak için birkaç önemli ek açıklamaya bakalım -
Sr.No. | Ek Açıklama ve Açıklama |
---|---|
1 | @Gereklidir @Required not, fasulye özellik ayarlayıcı yöntemleri için geçerlidir. |
2 | @Autowired @Autowired açıklama, bean özellik ayarlayıcı yöntemlerine, ayarlayıcı olmayan yöntemlere, yapıcıya ve özelliklere uygulanabilir. |
3 | @Qualifier @Autowired ile birlikte @Qualifier ek açıklaması, tam olarak hangi çekirdeğin kablolanacağını belirleyerek karışıklığı gidermek için kullanılabilir. |
4 | JSR-250 Ek Açıklamaları Spring, @Resource, @PostConstruct ve @PreDestroy açıklamalarını içeren JSR-250 tabanlı açıklamaları destekler. |