Spring - Konfigurasi Berbasis Anotasi
Mulai dari Spring 2.5 menjadi mungkin untuk mengkonfigurasi injeksi ketergantungan menggunakan annotations. Jadi, alih-alih menggunakan XML untuk mendeskripsikan kabel kacang, Anda dapat memindahkan konfigurasi kacang ke kelas komponen itu sendiri dengan menggunakan anotasi pada kelas, metode, atau deklarasi bidang yang relevan.
Injeksi anotasi dilakukan sebelum injeksi XML. Jadi, konfigurasi yang terakhir akan menimpa konfigurasi sebelumnya untuk properti yang dihubungkan melalui kedua pendekatan.
Kabel anotasi tidak diaktifkan di penampung Spring secara default. Jadi, sebelum kita dapat menggunakan kabel berbasis anotasi, kita perlu mengaktifkannya di file konfigurasi Spring kita. Jadi pertimbangkan file konfigurasi berikut jika Anda ingin menggunakan anotasi apa pun di aplikasi Spring Anda.
<?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>
Setelah <context: annotation-config /> dikonfigurasi, Anda dapat mulai memberi anotasi pada kode Anda untuk menunjukkan bahwa Spring secara otomatis memasukkan nilai ke dalam properti, metode, dan konstruktor. Mari kita lihat beberapa anotasi penting untuk memahami cara kerjanya -
Sr.No. | Anotasi & Deskripsi |
---|---|
1 | @Yg dibutuhkan Anotasi @Required berlaku untuk metode penyetel properti kacang. |
2 | @Autired Anotasi @Autowired dapat diterapkan ke metode penyetel properti kacang, metode non-penyetel, konstruktor, dan properti. |
3 | @Kualifikator Anotasi @Qualifier bersama dengan @Autowired dapat digunakan untuk menghilangkan kebingungan dengan menentukan kacang mana yang akan ditransfer. |
4 | Anotasi JSR-250 Spring mendukung anotasi berbasis JSR-250 yang mencakup anotasi @Resource, @PostConstruct dan @PreDestroy. |