Musim Semi - Definisi Kacang
Objek yang membentuk tulang punggung aplikasi Anda dan yang dikelola oleh wadah Spring IoC disebut beans. Kacang adalah objek yang dibuat, dirakit, dan dikelola oleh wadah Spring IoC. Kacang ini dibuat dengan metadata konfigurasi yang Anda berikan ke penampung. Misalnya, dalam bentuk definisi XML <bean /> yang sudah Anda lihat di bab sebelumnya.
Definisi kacang berisi informasi yang disebut configuration metadata, yang diperlukan agar wadah mengetahui hal-hal berikut -
- Cara membuat kacang
- Detail siklus hidup Bean
- Ketergantungan kacang
Semua metadata konfigurasi di atas diterjemahkan menjadi satu set properti berikut yang membentuk setiap definisi kacang.
Sr.No. | Properti & Deskripsi |
---|---|
1 | class Atribut ini wajib dan menentukan kelas kacang yang akan digunakan untuk membuat kacang. |
2 | name Atribut ini menetapkan pengenal kacang secara unik. Dalam konfigurasi metadata berbasis XML, Anda menggunakan atribut id dan / atau nama untuk menentukan pengenal kacang. |
3 | scope Atribut ini menentukan ruang lingkup objek yang dibuat dari definisi kacang tertentu dan itu akan dibahas di bab lingkup kacang. |
4 | constructor-arg Ini digunakan untuk memasukkan dependensi dan akan dibahas di bab-bab selanjutnya. |
5 | properties Ini digunakan untuk memasukkan dependensi dan akan dibahas di bab-bab selanjutnya. |
6 | autowiring mode Ini digunakan untuk memasukkan dependensi dan akan dibahas di bab-bab selanjutnya. |
7 | lazy-initialization mode Kacang yang diinisialisasi malas memberi tahu container IoC untuk membuat instance kacang saat pertama kali diminta, bukan saat startup. |
8 | initialization method Sebuah callback yang akan dipanggil setelah semua properti yang diperlukan pada bean telah disetel oleh container. Ini akan dibahas pada bab siklus hidup kacang. |
9 | destruction method Callback yang akan digunakan saat wadah yang berisi kacang dihancurkan. Ini akan dibahas pada bab siklus hidup kacang. |
Metadata Konfigurasi Musim Semi
Penampung Spring IoC benar-benar dipisahkan dari format tempat metadata konfigurasi ini sebenarnya ditulis. Berikut adalah tiga metode penting untuk menyediakan metadata konfigurasi ke Spring Container -
- File konfigurasi berbasis XML.
- Konfigurasi berbasis anotasi
- Konfigurasi berbasis Java
Anda telah melihat bagaimana metadata konfigurasi berbasis XML diberikan ke penampung, tetapi mari kita lihat contoh lain dari file konfigurasi berbasis XML dengan definisi kacang yang berbeda termasuk inisialisasi malas, metode inisialisasi, dan metode penghancuran -
<?xml version = "1.0" encoding = "UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- A simple bean definition -->
<bean id = "..." class = "...">
<!-- collaborators and configuration for this bean go here -->
</bean>
<!-- A bean definition with lazy init set on -->
<bean id = "..." class = "..." lazy-init = "true">
<!-- collaborators and configuration for this bean go here -->
</bean>
<!-- A bean definition with initialization method -->
<bean id = "..." class = "..." init-method = "...">
<!-- collaborators and configuration for this bean go here -->
</bean>
<!-- A bean definition with destruction method -->
<bean id = "..." class = "..." destroy-method = "...">
<!-- collaborators and configuration for this bean go here -->
</bean>
<!-- more bean definitions go here -->
</beans>
Anda dapat memeriksa Contoh Spring Hello World untuk memahami cara menentukan, mengkonfigurasi, dan membuat Spring Beans.
Kami akan membahas tentang Konfigurasi Berbasis Anotasi dalam bab terpisah. Ini sengaja dibahas dalam bab terpisah karena kami ingin Anda memahami beberapa konsep Spring penting lainnya, sebelum Anda memulai pemrograman dengan Spring Dependency Injection with Annotations.