Ana içeriğe geç

1.4. Genel Yapı ve Paketler#

Framework instance projelerinin genel yapısı 4 temel bileşenden oluşmaktadır. * Client * Provider * Starter * Server

Project Structure

Client#

İstemci tarafından erişilecek feign uçlarını içeren pakettir. FeignRestService'ler bu katmanda tanımlanır.

Provider#

Veri sağlanan işlerin yapıldığı katmandır. Database, redis, integration vb. üzerinden veri alışverişi işlemleri bu katmanda yapılır.

Örnek olarak database-provider modüle ait aşağıdaki paketleri içerir; * Converter -> Java bean'lerin dönüşümünü sağlamak amacı ile code generator olarak MapStruct kullanılmaktadır. * Entity -> Veritabanı tablolarına persistence domain nesnesidir. * Generator -> Sorgu kriterlerinin oluşturulmasına yardımcı olan sınıflardır. * Logic -> Repository erişimlerinin ve entity-model dönüşümlerinin yapıldığı servisleri içerir. * Repository -> Veritabanı işleri için kullanılan arayüzlerdir.

Starter#

Domain ile ilgili logic barındıran katmandır.

Modüle ait aşağıdaki paketleri içerir; * Controller -> Rest service implementasyonlarının yapıldığı sınıflardır. RestController'lar bu paket içerisinde yer alır. * Logic -> Domain logic içeren servisleri barındırır.

Modül ile ilgili ekstra özelliklere ihtiyaç duyulduğunda customization yapılabilecek olan pakettir. Kullanımı ile ilgili ayrıntılı bilgiye starter üzerinden ulaşılabilir.

Server#

İlgili instance için server'ın ayağa kaldırılması gerekmektedir. Bütün paketleri bir araya getirerek uygulamaya dönüştüren katmandır. Instance'a ait konfigürasyonlar bu katmanda yapılır. Profil ve taranacak olan paketler belirlenir.