Sprawdź zawód
Otwarta lekcja · Programista Java

Walidacja formatu i reguły domenowe

Kompendium zawodu — pojęcia i zwroty

Pojęcia w pracy

Kontroler
Punkt wejścia przyjmujący żądanie i zwracający odpowiedź.
DTO
Obiekt opisujący dane przekazywane przez granicę systemu.
Transakcja
Grupa zmian w bazie, które mają zostać zatwierdzone razem.
Wyjątek domenowy
Sygnał, że operacja naruszyła regułę procesu biznesowego.
Idempotencja
Własność operacji, której powtórzenie nie powiela skutku.

Zwroty w typowych sytuacjach

„Ustalmy kontrakt odpowiedzi przed zmianą implementacji.”
Chronisz aplikacje korzystające z usługi.
„Ten warunek sprawdzę w warstwie reguł zamówienia.”
Oddzielasz walidację formatu od decyzji biznesowej.
„Zapis zamówienia i pozycji powinien mieć jedną granicę transakcji.”
Ustalasz spójność powiązanych danych.

Format sprawdza typ i kompletność danych. Reguła domenowa ocenia operację w aktualnym stanie. Komunikat wyjaśnia sposób reakcji bez ujawniania wewnętrznych szczegółów.

  1. Sprawdź format
  2. Odczytaj stan
  3. Zastosuj regułę

Przykład z pracy

Poprawny kod przesyłki nadal nie pozwala edytować zamkniętego zamówienia.

Ćwiczenie praktyczne

Podziel przyczyny odrzucenia zmiany adresu na błędy formatu i stanu.

Ponowienie zapisuje drugie zamówienie

Pierwsze wywołanie zapisuje zamówienie, lecz odpowiedź nie dociera. Klient wysyła ten sam identyfikator operacji.

Pokaż przykładową reakcję

Zwracam istniejący wynik po potwierdzeniu zgodności żądania. Klient odzyskuje odpowiedź bez powielania skutku.

Sprawdź się — opcjonalne pytanie

Który problem wynika z reguły biznesowej?

  • Pole adresu nie ma wymaganej wartości
  • Data ma błędny format
  • Zamówienie zakończono i adresu nie można zmienić
Pokaż odpowiedź i wyjaśnienie

Zamówienie zakończono i adresu nie można zmienić. Reguła zależy od stanu procesu, nawet przy poprawnych danych wejściowych.

Źródła do nauki Spring — projektowanie usługi REST · Spring — zarządzanie transakcjami

Przejdź do pełnej ścieżki

Na karcie zawodu znajdziesz także pytania i zadanie na rozmowę kwalifikacyjną.

Zobacz program kursu →