Spring : Kontainer IoC

Oleh : Reza Ervani

بسم الله الرحمن الرحيم

Kontainer Spring berada di core framework Spring. Kontainer akan membuat objek, menghubungkannya bersama, mengkonfigurasinya dan memanage lifecycle mereka lengkap dari pembuatan hingga penghancuran. Kontainer Spring menggunakan dependency injection (DI) untuk mengatur komponen-komponen yang menyusun aplikasi. Objek-objek ini disebut Spring Beans yang akan kita bicarakan dalam artikel yang berbeda.

Kontainer menerima instruksi terkait objek apa untuk diinstansiasi, dikonfigurasi dan diassemble dengan membaca metadata konfigurasi yang disediakan. Metadata konfigurasi dapat direpresentasikan baik oleh XML, anotasi Java atau kode Java. Diagram berikut ini menunjukkan high-level view terkait bagaimana Spring bekerja. Kontainer IoC Spring membuat penggunaan class-class POJO Java dan metada konfigurasi untuk memproduksi sebuah sistem atau aplikasi yang terkonfigurasi penuh dan dapat dieksekusi.

 spring_ioc_container

Spring menyediakan dua tipe kontainer yang berbeda sebagai berikut :

Nomor Kontainer dan Deskripsi
1 Spring BeanFactory Container
Ini adalah kontainer yang paling sederhana yang menyediakan dukungan dasar untuk DI dan didefinisikan oleh interface org.springframework.beans.factory.BeanFactory . BeanFactory dan interface-interface terkait, seperti BeanFactoryAware, InitializingBean, DisposableBean, masih ada di Spring untuk tujuan kompatibilitas backward  dengan sejumlah besar framework pihak ketiga yang terintegrasi dengan Spring
2 Spring ApplicationContext Container

Kontainer ini menambahkan fungsionalitas yang bersifat enteprise-specific seperti kemampuan untuk memecahkan pesan tekstual dari suatu file properti dan kemampuan untuk mempublikasikan event-event aplikasi ke event listener yang menggunakannya. Kontainer ini didefinisikan oleh interface  org.springframework.context.ApplicationContext

Kontainer ApplicationContext menyertakan seluruh fungsionalitas dari kontainer  BeanFactory , sehingga secara umum dia lebih direkomendasikan daripada BeanFactory. BeanFactory masih dapat digunakan untuk aplikasi-aplikasi ringan seperti untuk perangkat mobile atau yang berbasis applet dimana volume dan kecepatan data berjumlah signifikan.

About Reza Ervani 426 Articles
Adalah pendiri programming.rezaervani.com -

Be the first to comment

Leave a Reply

Your email address will not be published.


*


This site uses Akismet to reduce spam. Learn how your comment data is processed.