Wersje Springa

Spring Framework, zapoczątkowany przez Roda Johnsona, ma bogatą historię rozwoju. Jego pierwsza wersja 0.9 ukazała się w 2003 roku, a już w marcu 2004 roku wydano wersję 1.0. Od tego czasu, Spring przeszedł przez sześć głównych wersji, z których każda wniosła znaczące zmiany i innowacje. Ostatnia z nich, 6.0, została wydana 22 listopada 2022 roku. Każda aktualizacja Spring Framework wnosiła zaawansowane funkcje i udoskonalenia, utrzymując jego pozycję jako jednego z kluczowych frameworków w środowisku Java.

Natomiast Spring Boot został wprowadzony w kwietniu 2014 roku. Spring Boot oferuje automatyczną konfigurację, wbudowane serwery aplikacji, jak Tomcat, oraz uproszczone zarządzanie zależnościami za pomocą "starterów" Maven i Gradle. Najnowsza wersja Spring Boot, 3.2.0, została wydana 23 listopada 2023 roku.

Spring - Lista wersji

  • 0.9 - rok 2002
  • 1.0 - rok 2003
    Spring staje się kompletnym frameworkiem Java/J2EE.
    Posiada zdolność do stosowania deklaratywnych transakcji do dowolnych obiektów POJO.
    Wprowadza HibernateTemplate upraszczający implementacje systemów opartych o Hibernate'a.
  • 2.0 - rok 2006
    W tym releasie wprowadzony zostaje AspectJ umożliwiający wykonywanie operacji w różnych punktach systemu.
    Wprowadzone zostają uproszczenia i udogodnienia mianowane biznesowo określeniami: Simple, Powerful, and Proven.
    Uproszczenia dotyczą na przykład możliwości pisania parametryzowanych zapytań JDBC w postaci jednej linii kodu.
    Zastosowane zostaje podejście "konwencja ponad konfiguracją".
    Spring pozbywa się tutaj także lokatorów usług oraz delegatów.
    Wprowadza również zaawansowane opcje dotyczące wielowątkowości.
  • 2.5 - rok 2007
    Spring dostarcza pełne wsparcie dla Javy 6 oraz Javy EE 5 (JDBC 4.0, JTA 1.1, JavaMail 1.4, JAX-WS 2.0)
    Udostępnione zostaje pełne wsparcie adnotacji dla wstrzykiwania zależności, łącznie z wdrożeniem kwalifikatorów (qualifiers).
    Dostarczona zostaje obsługa automatycznego wykrywania komponentów w ścieżce klas oraz automatyczna konfiguracja obiektowa.
  • 3.0 - rok 2009
    Wprowadzony zostaje SpEL (Spring expression language).
    Umożliwienie wstrzykiwania konfiguracji za pomocą adnotacji @Value.
    Wszechstronne wsparcie dla REST, w tym np. wybieranie wartości na podstawie adnotacji @PathVariable.
    Spring w pełni obsługuje adnotacje @Async oraz @Scheduled.
  • 4.0 - rok 2013
    Spring dostarcza pełne wsparcie dla Java 8.
    Pojawia się nowa adnotacja @RestController, co np. zwalnia z potrzeby stosowania @ResponseBody w każdym mapowaniu.
    Udostępnione zostaje pełne wsparcie dla stref czasowych.
  • 4.3 - rok 2016
    Usunięto potrzebę stosowania adnotacji @Autowired w przypadku gdy klasa posiada tylko jeden konstruktor.
    Klasy oznaczone adnotacją @Configuration wspierają od teraz wstrzykiwanie przez konstruktor.
    Pojawiają się nowe adnotacje złożone tj.: @GetMapping, @PostMapping, @PutMapping...
    Adnotacja @PathVariable może być zadeklarowana jako opcjonalna (w użyciu z Javą 1.8, np. @PathVariable Optional<String>).
  • 5.0 - rok 2017
    Cały kod Springa od teraz zbudowany jest na bazie Javy 8.
    W developmencie i użyciu pojawia się pełna kompatybilność z JDK 9.
    Wprowadzony zostaje nowy moduł spring-webflux (reaktywny) jako alternatywa dla spring-webmvc.
    Pojawia się pełne wsparcie dla JUnit 5.
    Spring dostarcza również wsparcie dla języka Kotlin (JetBrains).
  • 5.1 - rok 2018
    Pojawia się wsparcie dla JDK 11 wolne od warningów na ścieżce klas oraz modułów.
    Poprawione zostało logowanie za pomocą DEBUG i TRACE.
    Zoptymalizowano czas startu, a także zmniejszona została konsumpcja pamięci.
  • 5.3 - rok 2020
    Spring 5.3, będąca finałowym wydaniem funkcji w 5-tej generacji frameworku Spring, została zaprojektowana z myślą o podsumowaniu tematów tej generacji, takich jak programowanie reaktywne i wsparcie dla Kotlin, a także podniesieniu kompatybilności z GraalVM na wyższy poziom. Ponadto, przygotowywała ona grunt pod JDK 15 i 16, a także przyszłego JDK 17 LTS (Long-Term Support).
  • 6.0 - 2022/11
    Spring 6.0 wymaga co najmniej Java 17 i jest zorientowany na Jakarta EE zamiast Java EE, co oznacza zmianę przestrzeni nazw z javax na jakarta.
    Wprowadza także koncepcję AOT (Ahead-Of-Time) dla przetwarzania definicji beanów w czasie kompilacji, co przyczynia się do szybszego startu aplikacji. Dodatkowo, Spring 6.0 poprawia wsparcie dla natywnych obrazów GraalVM.
  • 6.1 - 2023/11
    Wersja Spring Framework 6.1, wydana w czerwcu 2023 roku, wprowadza kilka kluczowych ulepszeń i nowych funkcji. Została zaprojektowana, aby w pełni wykorzystywać możliwości JDK 21 oraz Jakarta EE 10, jednocześnie zachowując kompatybilność z JDK 17 i Jakarta EE 9. Wśród nowości znalazło się między innymi wsparcie dla Virtual Threads z Projektu Loom, umożliwiające lepsze zarządzanie wątkami.

Spring Boot

  • 2.0 - 2018/03
    Wsparcie dla Javy 9 (to raczej spodziewane skoro Spring Boot 2 bazuje na Springu w wersji 5).
    Wsparcie dla Kotlina (reaktywne programowanie).
    Nowa wersja aktuatora ze wsparciem dla Spring MVC, WebFlux i Jersey.
    Znacząco uproszczona autokonfiguracja security (naprawdę duża sprawa).
  • 3.0 - 2022/11
    Spring Boot 3 jest oparty na Spring Framework 6, wymaga co najmniej Java 17 i używa API Jakarta EE 9 zamiast EE 8. Jest to istotna aktualizacja, ponieważ wprowadza nowe funkcje i zmiany do środowiska programistycznego Spring.
    Spring Boot 3 rozszerza możliwości monitorowania i śledzenia aplikacji oraz zapewnia wsparcie dla generowania natywnych obrazów z GraalVM.
Zdjęcie autora
Autor: Jarek Klimas
Data: 03 stycznia 2024
Labele: Backend, Podstawowy, Java
Topowe Materiały
Spring IO: Spring Framework 6.0 goes GA
Spring IO: Spring Boot 3.0 Goes GA
Spring IO: Spring Framework 5.0 goes GA
Spring IO: Spring Boot 2.0 Goes GA

Baeldung: Spring Boot 3 and Spring Framework 6.0 – What’s New
Baeldung: Spring 5
Baeldung: What’s New in Spring Boot 2?

Udemy: [NEW] Spring Boot 3, Spring 6 & Hibernate for Beginners  —  polskie napisy

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: stackshare
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 .


Pozycjonowanie stron: Grupa TENSE