Zestawienie Spring Boot 2.0.0, 2.1.0, 2.1.1

Spring Boot prze do przodu coraz mocniej. Ledwo w zeszłym roku światło dzienne ujrzała wersja 2.0.0, a już powstały dwie kolejne, które uzyskały status finalnych. Mowa o wersjach 2.1.0 i 2.1.1. Zgodnie z noworocznym postanowieniem wprowadzenia ładu informacyjnego w rodzimym internecie, postanowiliśmy uporządkować i zestawić w jednym miejscu najważniejsze rozwiązania wprowadzone w tych trzech wersjach. Zapraszamy do lektury!

Spring Boot 2.0.0 - Marzec 2018

  • Java 8 - W przeciwieństwie do Spring Boota 1, Spring Boot 2 został napisany w Javie 8, stąd nie jest możliwe uruchomienie go na Javie 7. Warto wspomnieć, że wspiera on Javę 9, więc jeżeli chcemy napisać kod projektu w tej wersji Javy, to możemy to zrobić używając Spring Boot-a 2.
  • Spring 5 - Z racji tego, że Spring Boot 2 używa Javy 8 został on również wyposażony w Spring-a 5. Tak więc wersja 2.0.0 jest pierwszą wersją, w której Spring 4 nie jest już dostępny.
  • Aktualizacja innych zależności - Poza Springiem w ramach Spring Boota 2 zostały zaktualizowane (podniesione) wersje innych zależności, których używa ta wersja Boot-a. Z ważniejszych warto wspomnieć:
    • Tomcat 8.5
    • Flyway 5
    • Hibernate 5.2
  • Uproszczona konfiguracja bezpieczeństwa (Spring Security) - domyślnie wszystkie endpointy (również te z Actuatora) oraz zasoby statyczne są zabezpieczone. W przypadku gdy użytkownicy zechcą dodać własną konfigurację zabezpieczeń, domyślna konfiguracja zostanie wyłączona. Od tego momentu to na użytkowniku spoczywa odpowiedzialność za konfigurację zabezpieczeń. Plusem tego rozwiązania jest to, że cała konfiguracja jest ustawiana z jednego - znanego użytkownikowi - miejsca.
  • Wsparcie dla HTTP/2 - Pojawia się wsparcie dla tej wersji protokołu HTTP. Zgodnie z tym co pisaliśmy w kontekście Javy 9 - Podsumowanie Java 9, Java 10, Java 11 - od teraz posługiwanie się tym protokołem staje się znacznie prostsze.
  • Wsparcie dla programowania reaktywnego (Reactive Support) - Pojawia się Spring WebFlux (framework web), który jest reaktywnym odpowiednikiem Spring MVC. Działa on w sposób asynchroniczny i nieblokujący, co pozwala na obsłużenie ogromnej liczby współbieżnych połączeń.
  • Nowa wersja Actuatora - znacznie przebudowana wersja zestawu narzędzi upraszczających monitorowanie oraz śledzenie aplikacji.
  • Nowa wersja Gradle'a - wtyczka została znacznie przebudowana
  • Dedykowane wsparcie dla Kotlina

Spring Boot 2.1.0 - Październik 2018

  • Java 11 - Spring Boot w tej wersji wspiera Javę 11 oraz pozostaje nadal kompatybilny z Javą 8.
  • Spring 5.1 - Z racji tego, że Spring Boot 2.1.0 wspiera Javę 11 został on również wyposażony w Spring-a 5.1.
  • Aktualizacja innych zależności - Poza Springiem w ramach Spring Boota 2.1.0 zostały zaktualizowane (podniesione) wersje innych zależności, których używa ta wersja Boot-a. Z ważniejszych warto wspomnieć:
    • Tomcat 9
    • Hibernate 5.3
    • Micrometer 1.1
    • Undertow 2
  • Poprawa wydajności - Od teraz aplikacje oparte o Spring Boota są uruchamiane znacznie szybciej i zużywają mniej pamięci. W komentarzach na stronie spring.io ktoś napisał, że jego Demo Aplikacja startuje teraz 20% szybciej. Jeśli tak jest faktycznie, to naprawdę warto "ubrać" nasz projekt w tą wersję Boota. Dodatkowo Hibernate używany w ramach Spring Data JPA potrafi od teraz wystartować asynchronicznie w osobnym wątku, działając równolegle do procesu uruchamiania aplikacji. Jeśli chcemy zastosować takie rozwiązanie to ustawiamy flagę:

    spring.data.jpa.repositories.bootstrap-mode=deferred.

Spring Boot 2.1.1 - Listopad 2018

  • Wsparcie dla Multi-Release JAR.
  • Rozwój logowania dla mechanizmu rejestracji serwletów i filtrów.
  • Aktualizacja zależności.
Aktualizacja
Obecną wersją (16 Styczeń 2019) o statusie GA jest wersja 2.1.2, w której to głównie zostały rozwiązane błędy, a także podniesiono nieznacznie wersje niektórych zależności.
Autor: Jarek Klimas
Data: 16 stycznia 2019
Labele:Backend, Poziom podstawowy, Spring, Spring Boot

Stale się rozwijamy, a więc bądź na bieżąco!
Na ten adres będziemy przesyłać informacje o ważniejszych aktualizacjach, a także o nowych materiałach pojawiających się na stronie.
Polub nas na Facebooku:
Nasi partnerzy:
Javappa to również profesjonalne usługi programistyczne oparte o technologie JAVA. Jeśli chesz nawiązać z nami kontakt w celu uzyskania doradztwa bądź stworzenia aplikacji webowej powinieneś poznać nasze doświadczenia.
Kliknij O nas .