JavaWeb application

Spring Boot część 1 – Czym jest i jak zacząć?

Spring Boot

Spring Boot jest to rozwiązanie convention-over-configuration bazujące na Springu. Główne korzyści jakie dostarcza nam ten framework to:

  • Łatwość uruchomienia – paczka projektu posiada wbudowany serwer i inne niezbędne komponenty, które są potrzebne do uruchomienia aplikacji.
  • Automatyczna konfiguracja – do uruchomienia zasadniczej aplikacji nie jest wymagana żadna dodatkowa konfiguracja. Dodanie własnej jest opcjonalna dla osiągnięcia innych/nowych korzyści.
  • Szybkość – tworzenie aplikacji z wykorzystaniem Spring Boot jest uproszczone co przekłada się szybszy i łatwiejszy proces developmentu.

Jak stworzyć aplikacje w Spring Boot?

Istnieje gotowe narzędzie, które pozwala na generowanie projektu, jest nim Spring Initializr:

Spring Initializr
Generator projektu – Spring Initializr

Zasadnie pola jakie można wypełnić:

  • Group – nazwa pakietu (widoczna w drzewie plików projektu).
  • Artefact – nazwa skompilowanego projektu.
  • Dependencies – zależności/zewnętrzne biblioteki rozszerzające możliwości projektu.

Hello Word w Spring Boot

Do stworzenie pierwszej aplikacji „Hello World” wystarczy skorzystać z generatora. Jedyną rzeczą, którą należy uwzględnić to dodanie zależność Web w sekcji Dependencies.

Wybór zależności projektu
Wybór zależności projektu

Biblioteka ta umożliwia budowanie aplikacji internetowych. Po wykonaniu tego kroku wystarczy go rozpakować i uruchomić w środowisku programistycznym np. IntelliJ IDEA.

Dobrą praktyka tuż po zaimportowaniu projektu jest jego przebudowanie (operacja clean&build).

Uruchomienie aplikacji Spring Boot w IntelliJ
Uruchomienie aplikacji w IntelliJ

Po otworzeniu projektu dostępna jest klasa uruchomieniowa. Klikając na niej PPM i wybraniu run uruchomi się pusta aplikacja.

Warto przyjrzeć się strukturze kodu klasy uruchomieniowej:

// wykorzystywane zaleznosci

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

// adnotacja wskazujaca, ze jest to aplikacja Spring Boot
@SpringBootApplication
public class HelloApplication {

    public static void main(String[] args) {
        // uruchomienie aplikacji
        SpringApplication.run(HelloApplication.class, args);
    }
}

Czas napisać własna klasę wyświetlająca napis Hello World!

W tym celu utwórz nową klasę wzorując się na tym fragmencie kodu:

package pl.bykowski.hello;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

// rodzaj beana (typu klasy zarządzanej przez Spring)
@RestController
public class HelloWorld { // nazwa klasy 

    // wskazanie pod jakim adresem dostepna jest metoda
    @RequestMapping("/hello")
    // sygnatura metody
    public String hello() {
        // zwracana wartosc przez przeglądarke 
        return "Hello World! :)";
    }
}

W kodzie zostały wykorzystane dwie kluczowe adnotacje:

  • @RestController – wskazujący na to, że zarządzanym beanem jest kontroler (więcej wyjaśnień w kolejnej części kursu).
  • @RequestMapping – wskazuje pod jakim adresem dostępna jest metoda.

Aplikacja zostanie uruchomiana lokalnie. Domyślnie uruchamia się pod adresem:
http://localhost:8080/

Parametr przekazany w adnotacji metody webowej to /hello, dlatego też wywołanie jej powinno wystąpić z localhost:8080/hello

Pod standardowym uruchomieniu aplikacji, widzimy rezultat w przeglądarce:

Hello World w Spring Boot
Aplikacja Hello World

Dalsze kroki

W kolejnej części dowiesz się więcej na temat zarządzania beanami oraz adnotacjach stosowanych w Spring Boot.
Cały kurs opisujący mechanikę i działanie Spring Boot od podstaw znajdziesz tutaj: Kurs Spring Boot

Szkolenie Spring Boot

Zapraszam Cię na mój kanał gdzie regularnie tworzę materiały dotyczące tego frameworka. Cześć z nich jest od podstaw, istnieje też sporo dla zaawansowanych programistów. Zachęcam Cię do przejrzenia mojego kanału YouTube:

Natomiast nowe i profesjonalne materiały do nauki Spring Boota dostępne są na akademiaspring.pl

Tags:
Show Buttons
Hide Buttons