Oleh : Reza Ervani
بسم الله الرحمن الرحيم
Spring dapat menjadi toko one-stop bagi seluruh aplikasi enterprise kita. Spring juga bersifat modular, membuat kita dapat memilih modul yang mana yang sesuai dengan kebutuhan kita, tanpa harus menyertakan keseluruhannya. Bagian berikut memberikan detail tentang seluruh modul yang tersedia di Framework Spring :
Framework Spring menyediakan sekitar 20 modul yang dapat digunakan berdasarkan kebutuhan aplikasi.
Core Container
Kontainer utama terdiri dari modul Core, Beans, Context dan Expression Languange
- Modul Core menyediakan bagian fundamental framework, termasuk IoC dan fitur Dependency Injection
- Modul Bean menyediakan BeanFactory yang merupakan implementasi canggi dari pola factory
- Modul Context dibangun pada dasar solid yang disediakan oleh modul Core dan Beans dan dia adalah medium untuk mengakses objek apapun yang dipilih dan dikonfigurasi. Antarmuka ApplicationContext adalah titik fous dari modul Context.
- Modul Expression Language menyediakan bahasa ekspresi yang powerful untuk melakukan query dan memanipulasi suatu graph objek pada runtime
Data Access/Integration
Layer Data Access/Integration terdiri dari modul JDBC, ORM, OXM, JMS dan Transaction :
- Modul JDBC menyediakan layer abstraksi JDBC yang menghilangkan kebutuhan terhadap kebutuhan koding terkait JDBC yang membosankan
- Modul ORM menyediakan layer integrasi ke API pemetaan terkait objek, termasuk JPA, JDO, Hibernate dan iBatis
- Modul OXM menyediakan suatu layer abstraksi yang mendukung implementasi pemetaan Objek/XML untuk JAXB, Castor, XMLBeans, JibX dan XStream.
- Modul Java Messaging Service JMS berisi fitur-fitur untuk memprodukasi dan mengkonsumsi pesan
- Modul Transaction mendukung manajemen transakasi programatik dan deklaratif untuk class-class yang mengimplementasikan antarmuka khusus dan untuk melakukan seluruh POJO kita.
Web
Layer Web berisi modul Web, Web-Servlet, Web-Struts, dan Web-Portlet :
- Modul Web menyediakan fitur integrasi berorientasi web dasar seperti fungsionalitas beragam file-upload dan inisialisasi kontainer IoC menggunakan listener servlet dan suatu konteks aplikasi berorientasi web.
- Modul Web-Servlet berisi implementasi model-view-controller (MVC) Spring untuk aplikasi web
- Modul Web-Struts berisi class-class pendukung untuk integrasi suatu tier web Struts klasi didalam aplikasi Spring
- Modul Web-Portlet menyediakan implementasi MVC untuk digunakan di dalam lingkungan portlet dan melakukan mirror terhadap fungsionalitas modul Web-Servlet
Lain-lain
Ada beberapa modul penting lain seperti AOP, Aspect, Instrumentation, Web dan Test :
- Modul AOP menyediakan implementasi pemrogramman berorientasi aspek yang memperkenankan kita untuk menentukan method-interceptor dan pointcut untuk secara bersih memisahkan kode yang menerapkan fungsionalitas dan perlu dipisahkan.
- Modul Aspects menyediakan integrasi dengan AspectJ yang merupakan framework AOP yang sangat powerful dan matang.
- Modul Instrumentation menyediakan dukungan dan implementasi class loader untuk digunakan didalam server-server aplikasi tertentu.
- Modul Test mendukung pengujian komponen-komponen Spring dengan framerwork JUnit atau TestNG
Bersambung insya Allah
Leave a Reply