W poprzednim artykule pisałem o „Trzech rzeczach, które powinieneś wiedzieć o Hibernate”. Dzisiaj zajmę się szczegółowym opisaniem pierwszej z nich, czyli problemem n + 1
zapytań.
Autor: Mateusz Dąbrowski
Feign deklaratywny klient http
Współczesne aplikacje coraz częściej komunikują się ze sobą, coraz częściej korzystają także z różnego rodzaju api udostępnianego publicznie przez różnych dostawców. Najprostszą i chyba najczęściej wykorzystywaną metodą łączenia się z różnymi serwisami poprzez takie api, jest użyciu klienta http. Implementacji różnych klientów jest wiele. Ja dzisiaj opiszę Feigna, klienta deklaratywnego, który pozwala nam zmniejszyć ilość pisanego kodu oraz znacznie ułatwić pracę.
Czytaj więcej
Spring Webflux przykładowa aplikacja
W poprzednim artykule pisałem o Spring Webflux. W tym artykule przedstawię krótki przykład jak Webflux działa. I jak uruchomić projekt bazujący na tym module Springa.
Spring Webflux – Reaktywny Spring
Spring Webflux to moduł frameworka Spring, który pozwala korzystać z reaktywnego programowania w Springu. Koncept programowania reaktywnego został spopularyzowany przez ReactiveX.io (Reactive Extension), które wprowadza reaktywne programowanie do wielu języków poprzez biblioteki. Np. poprzez RxJs w Javascripcie, RxJava w języku Java, Rx.NET w C# i wiele innych. Jest to przetwarzanie oparte na zdarzeniach (events). I przeciwnie niż mogłoby się wydawać nie jest to nowa koncepcja.
Czytaj więcej
Jak przyspieszyć swoją pracę w Intellij Idea (Tips & Tricks)
Intellij Idea to jedno z najpopularniejszych środowisk programistycznych dla Javy. W tym filmie pokaże jak korzystać z niego o wiele wygodnie.
Spring Batch – co warto wiedzieć o przetwarzaniu wsadowym
Spring Batch to jeden z wielu pod projektów w frameworku Spring. W skrócie służy on do developowania zadań wsadowych, które mają charakter cykliczny lub zadań wykonywanych na żądanie. Mogą to być proste zadania przetwarzania np. cykliczna aktualizacja rekordów w tabeli lub bardziej skomplikowane wielokrokowe zadania przetwarzania/importowania danych.
Pytania rekrutacyjne – czym różni się klasa abstrakcyjna od interfejsu?
Na to z pozoru proste pytanie możesz odpowiedzieć na kilka sposobów. Możesz skupić się tylko na różnicach technicznych pomiędzy klasą abstrakcyjną i interfejsem. To jest ta prosta część. Możesz też zagłębić się bardziej w temat i opowiedzieć o tym, kiedy stosować klasę abstrakcyjną, a kiedy interfejs. Ale to nie wszystko, bo możesz także powiedzieć o różnych regułach, które można naruszyć korzystając z jednej lub z drugiej konstrukcji. O tym wszystkim przeczytasz w poniższym artykule.
Klasa Record w Javie 14
Java to język, który rozwija się bardzo dynamicznie. Z każdą wersją developerzy Javy wprowadzają nowe istotne funkcjonalności. Jedną z takich ważnych funkcjonalności są rekordy w Javie 14. W filmie przedstawiam wszystkie istotne informacje na temat użycia rekordów.
Architektura warstwowa – sposób na organizację kodu
Jednym ze sposobów radzenia sobie z rozrastającym się kodem aplikacją jest architektura warstwowa. Model warstwowy jest jednym z najbardziej rozpowszechnionych modeli architektury aplikacji. Ale czy jest najlepszy i czy nadaje się do każdej aplikacji dowiesz się z poniższego artykułu.