karunaproject / be

0 stars 0 forks source link

Karuna Backend

Polski:

Aby uruchomić ten projekt, wcześniej musisz pobrać repozytorium DevOps i uruchomić Docker

Struktura Projektu

Config: Klasy konfiguracyjne, które ustawiają parametry naszej aplikacji.
Controllers: Kontrolery, które obsługują przychodzące żądania HTTP i kierują je odpowiednio.
DTO: Obiekty transferu danych, które przekazują dane między procesami. Zazwyczaj są wykorzystywane do przesyłania danych do FrontEndu. Obiekty DTO są tworzone na podstawie Hibernate entities.
Models: Modele encji, które odzwierciedlają struktury danych aplikacji.
Repositories: Interfejsy do interakcji z bazą danych.
Services: Klasy serwisowe, gdzie implementowana jest logika biznesowa działania na modelach z bazy danych.
KarunaBackendApplication: Główna klasa aplikacji.

Migracje Bazy Danych z Liquibase

Aby uruchomić migrację, wystarczy postępować zgodnie z następującymi krokami:

Projekt aktualizuje bazę danych z modeli encji Hibernate I changelogów Liquibase. Dlatego model Hibernate powinien również aktualizować bazę danych, abyś mógł przetestować swoje modele PRZED utworzeniem nowego changelogu.

Changelogi bazy danych powinny być tworzone TYLKO JEŚLI model bazy danych został przetestowany wcześniej za pomocą Hibernate.


English:

In order to run this project, previously you have to pull DevOps repository and run the docker

Project Structure

Config: Configuration classes that set up our application parameters.
Controllers: Controllers that handle incoming HTTP requests and direct them accordingly.
DTO: Data Transfer Objects that shuttle data between processes. Usually those objects represent data that should be sent back to FrontEnd, those models are based on Hibernate entities.
Models: Entity models that reflect the application's data structures.
Repositories: Interfaces for database interactions.
Services: Service classes where the business logic is implemented.
KarunaBackendApplication: The main application class.

Database Migrations with Liquibase

In order to run migration all you have to follow those steps:

Project updates database from Hibernate entity models AND liquibase changelogs. Therefore Hibernate model should update the database as well, so you could test your models BEFORE creating new changelog.

Database changelogs should be created ONLY IF database model was tested before using Hibernate.