W ekosystemie Spring Boot, gdy nie ma niestandardowej strony błędu obsługującej konkretny błąd, Spring Boot domyślnie obsługuje błąd za pomocą Strona błędu białej etykiety.

To jest domyślna strona błędu Whitelabel. Możemy również dostosować tę stronę błędu białej etykiety. W tym artykule omówimy niektóre podejścia do dostosowywania tej strony błędu Whitelabel.
Notatka: Możemy wyłączyć stronę błędów Whitelabel, ustawiając właściwość server.error.whitelabel.enabled na false.
serwer.error.whitelabel.enabled=false
Konfiguracja IDE dla projektu
Skonfigurujmy nasze IDE, tworząc projekt Spring Boot. Aby utworzyć projekt Spring Boot, przejdź do Plik menu > Nowy > Inni > Projekt wiosennego startu

zestaw skrótów Java
Skonfiguruj projekt zgodnie ze swoimi wymaganiami.
Notatka: Tutaj Java w wersji 8, narzędzie do zarządzania kompilacją Maven i Eclipse IDE używane dla Java i programistów internetowych 2023-06

Możemy również dodać następujące zależności jednym kliknięciem podczas konfigurowania projektu.
Wymagane zależności
Spring Boot DevTools Thymeleaf Spring Web Services>
Po dodaniu tych zależności kliknij „ skończyć „projekt powstanie.

Konfiguracja projektu dla aplikacji
Krok 1: Dodawanie zależności
Po utworzeniu projektu skonfigurujmy nasz plik pom.xml (jeśli używasz Mavena) dodając wymagane zależności.
usługi internetowe typu spring-boot-starter : Do obsługi metod HTTP i punktów końcowych
org.springframework.boot spring-boot-starter-web-services>
spring-boot-starter-thymeleaf: Thymeleaf to silnik szablonów, który zapewnia bardziej uporządkowany format szablonów.
org.springframework.boot spring-boot-starter-thymeleaf>
spring-boot-devtools: Jest to zależność opcjonalna, ale zapewnia wiele narzędzi programistycznych i funkcji do tworzenia aplikacji.
org.springframework.boot spring-boot-devtools runtime true>
Krok 2: Tworzenie zasobów
Po skonfigurowaniu pliku pom.xml utwórzmy zasoby.
- Przejdź do ` src/główny/zasoby ` w strukturze projektu. W nim utwórz folder o nazwie ` szablony ` do przechowywania szablonów HTML. Teraz utwórz niestandardową stronę błędu z rozszerzeniem ` .html ` rozszerzenie. Na przykład nazwałem szablon HTML jako ` strona_błędu `.html.

- Teraz napisz dostosowaną logikę, za pomocą której chcesz zastąpić domyślną stronę błędu białej etykiety.
strona_błędu.html:
HTML
> <>html>>> <>head>>> ><>title>>Tytuł błędu> głowa> |
>
>
Krok 3: Zastąpienie domyślnych właściwości
- Domyślnie Spring Boot używa pliku ` właściwości.aplikacji ` lub ` aplikacja.yml `, aby ustawić właściwości aplikacji. Aby zastąpić dowolne domyślne zachowanie aplikacji Spring Boot, możemy dodać i skonfigurować właściwości w tych plikach zgodnie z narzędziem do zarządzania kompilacją. Domyślnie Spring Boot używa strony błędu Whitelabel. Aby zastąpić to zachowanie, skonfigurujmy niektóre właściwości.
- Skopiuj i wklej następujące właściwości w pliku ` właściwości.aplikacji ` (jeśli używasz Mavena)
//Ta właściwość służy do wskazania ścieżki naszego szablonu
spring.mvc.view.prefix=/templates/potrójna zima//Ta właściwość służy do wskazania rozszerzenia lub typu szablonów
spring.mvc.view.suffix=.html//Ta właściwość ustawiona na false wskazuje, że nie chcemy używać domyślnej strony błędu białej etykiety serwer.error.whitelabel.enabled=false
//Ta właściwość służy do określenia ścieżki naszej strony błędu
serwer.error.path=/błąd
Krok 4: Tworzenie klasy Controller
Stwórzmy klasę Controller naszego projektu. W tym celu przejdź do domyślnego pakietu naszego projektu. Utwórz podpakiet o nazwie ` kontroler ` i wewnątrz pakietu kontrolera utwórz klasę kontrolera. Na przykład nazwałem klasę kontrolera jako ` Klasa kontrolera.java `.
Jawa
package> com.example.demo.controller;> > import> org.springframework.boot.web.servlet.error.ErrorController;> import> org.springframework.stereotype.Controller;> import> org.springframework.web.bind.annotation.GetMapping;> > @Controller> public> class> ControllerClass>implements> ErrorController {> > >@GetMapping>(>'/error'>)> >public> String handleError() {> >return> 'error_page'>;> >}> > }> |
>
>
Wyjaśnienie tworzenia klasy kontrolera:
W powyższym kodzie nasza ControllerClass implementuje rozszerzenie ` Kontroler błędów ` do renderowania błędów. W klasie zdefiniowaliśmy ` uchwytBłąd ` metoda oznaczona adnotacją ` @GetMapping ` określony z punktem końcowym ` /błąd ` i zwrócenie szablonu ` strona_błędu `.
Struktura projektu
Upewnij się, że Twój projekt ma następującą strukturę projektu.

Kroki, aby uruchomić aplikację
Aby uruchomić aplikację, kliknij projekt prawym przyciskiem myszy > Uruchom jako > Aplikacja Spring Boot.

Dane wyjściowe niestandardowej strony błędu:
Spróbuj podać dowolną ścieżkę, która nie jest obsługiwana w klasie kontrolera. Wyświetli niestandardową stronę błędu.
