Spring (2) : Arsitektur Framework Spring

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.

spring_architecture

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

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.