Dokumentacja modułów w Modulith
Raczej żaden z deweloperów nie lubi pisać dokumentacji. Jest to coś do czego od zawsze nie pałaliśmy sympatią. Sam byłem w takiej sytuacji, gdzie na projekcie tworzenie dokumentacji technicznej polegało na tępym kopiowaniu i wklejaniu kodu do plików Word. Był…
Modulith a eventy
Ostatni wpis przybliżył nam ideę stojącą za eksperymentalnym projektem Springa Modulith. Dowiedzieliśmy się w nim w jaki sposób Modulith pilnuje modularności naszego monolitu. Natomiast dzisiaj chciałbym abyśmy wykorzystali go do zmniejszania couplingu pomiędzy stworzonymi modułami. Wcześniej wywoływaliśmy funkcje biznesowe modułów…
Modularny monolit w Modulith
Każdy z nas, deweloperów, na pewno miał styczność z pojęciem modularnego monolitu. Jeśli nie w praktyce to chociaż w teorii. Więc w skrócie, dzięki modularnemu monolitowi wszystko w naszej aplikacji powinno znajdować się na swoim miejscu, w odrębnych modułach. Dodatkowo,…
Połączenia z dwoma bazami danych w Spring
Zdarza się, że niezbędne jest połączenie się z dwoma bazami danych w ramach jednej aplikacji Spring Boota. Pytanie tylko jak to osiągnąć. Nie jest to tak trudne jakby mogło się wydawać. Postaram się przybliżyć Ci ten proces w dzisiejszym artykule….
@Transactional a propagacja transakcji
W dzisiejszych czasach duża liczba firm zatrudniająca deweloperów Java wykorzystuje w swoich szeregach Springa z Hibernate. Ja sam na ten moment pracuję w tych dwóch technologiach i jak każdy napotykam ciekawe problemy z nimi związane. Jeden z nich dotyczył tytułowej…
Adnotacja @Scheduled
Czasami zdarza się taka potrzeba, aby uruchomić, cyklicznie, pewne zadania bez ingerencji użytkownika. Może to być np. przetwarzanie wsadowe, o którym pisałem w jednym z poprzednich wpisów. Z pomocą przychodzi nam, więc adnotacja @Scheduled udostępniona przez framework Springa. Sprawdźmy jak…
BeanPropertyRowMapper, czyli na co uważać
Wraz z rozwojem aplikacji AnimalShelter natrafiam na ciekawe przypadki. Jeden z nich dotyczył klasy BeanPropertyRowMapper służącej do mapowania wiersza bazodanowego do instancji klasy. Błąd wyszedł na jaw dopiero podczas testów integracyjnych. Wiersz, który chciałem wyciągnąć z bazy nie mapował pól…
Przetwarzanie wsadowe przy użyciu Spring Batch
Przetwarzanie wsadowe to użyteczne narzędzie, które pozwala na wykonywanie serii zadań bez interakcji z użytkownikiem. Jest to alternatywa dla programów, które wymagają aktywności użytkownika końcowego, aby wprowadzał dane przez terminal albo interfejs graficzny. Batch processing… is defined as the processing…
Uruchom swoją aplikację Springową na dockerze
W dzisiejszych czasach Docker jest podstawowym narzędziem warsztatu programisty. Dzięki niemu łatwiej jest nam tworzyć aplikacje rozproszone niezbędne np. przy wykorzystaniu architektury mikroserwisowej. Łatwiej jest nam również weryfikować poprawność działania tworzonego oprogramowania bez konieczności posiadania zewnętrznych serwerów. Wszystko możemy sprawdzić…
@Component czy @Bean? 🤔
Wraz z powstaniem Spring Framework proces tworzenia aplikacji klasy enterprise w Javie został znaczenie uproszczony. Stało się tak dzięki kontenerowi zależności, który odseparował kreacje obiektów od ich użycia. Nie musimy się martwić o zarządzenie zależnościami, Spring za nas je wykryje…