Kręg cyklu wiosennego fasoli ma wiele kroków, takich jak inicjalizacja, bieganie i niszczenie. Możemy wykonać nasze niestandardowe zadanie między tymi fazami do testowania/debugowania lub innych celów użyteczności publicznej.
Na przykład, Jeśli chcemy wykonać niektóre zadania na początku fasoli i na końcu pewne zadania związane z oczyszczaniem, możemy to zrobić odpowiednio przy inicjalizacji fasoli lub przed zniszczeniem obiektu fasoli. Sprawia, że aplikacja jest bardziej funkcjonalna i łatwiejsza do debugowania.
W tym celu Spring zapewnia predefiniowane Interfejsy i adnotacje To sprawia, że nasze zadanie jest łatwe. Istnieją dwa sposoby wykonywania tych zadań:
Najpierw zaczynamy od interfejsów, a następnie patrzymy na adnotacje.
Interfejsy do cyklu życia Java Bean
Wiosna ma dwa interfejsy, Inicjalizowaniebean I Jednorazowebean, który zawiera kilka metod użyteczności do wykonywania zadań podczas cyklu życia fasoli.
Aby wykonać zadanie inicjalizacyjne, możemy użyć afterpropertiesset () Metoda Inicjalizowaniebean interfejs podobnie do czyszczenia zasobów. Przed zniszczeniem obiektu fasoli możemy użyć zniszczyć() Metoda Jednorazowebean interfejs.
Zacznijmy od uruchamiania przykładów.
Wdrażanie metod cyklu życia przy użyciu interfejsów
W takim przypadku najpierw tworzymy aplikację sprężyną opartą na Maven, a następnie tworzymy pracownika fasoli. Ta klasa fasoli implementuje oba interfejsy, które omówiliśmy. Teraz musimy również wdrożyć ich metody.
afterpropertiesset () Metoda jest stosowana do wykonania zadania inicjalizacji i zniszczyć() metoda wykonywania zadania przed zniszczeniem obiektu fasoli. Zobacz kod źródłowy klasy fasoli pracowników.
// pracownik.Jawa
To jest główna klasa, w której utworzymy fasolę i wywołujemy metodę zdobywców i setterów.
// SpringApp.Jawa
pakiet com.Linuxhint;// SpringConfig.Jawa
Packagecom.Linuxhint;// pom.XML
Ten plik XML, który zawiera cały kod zależności dla aplikacji.
Uruchom projekt
Po utworzeniu projektu nadszedł czas, aby uruchomić aplikację, aby sprawdzić, czy wszystkie pliki działają dobrze, a aplikacja działa zgodnie z oczekiwaniami. Ta aplikacja drukuje następujące dane wyjściowe do okna konsoli:
Wyjście:
Inicjowanie zadań wykonanych…Ogłoszenie: Nie nazwaliśmy metod cyklu życia, ale domyślnie nazywani wiosennym pojemnikiem (MKOl).
Wdrażanie metod cyklu życia przy użyciu adnotacji
To jest nowoczesne podejście, w którym używamy adnotacji na miejscu interfejsów. Oznacza to, że klasa fasoli nie potrzebuje więcej interfejsów. Musimy tylko zaznaczyć metody wywołania za pomocą adnotacji @PostConstruct i @PreDestroy.
Adnotacja @postconstruct jest wywoływana w czasie inicjalizacji, podczas gdy @Predestroy jest wywoływany tuż przed zniszczeniem obiektu fasoli.
Notatka: Przed użyciem adnotacji musimy dodać następującą zależność do POM naszego projektu.plik XML.
Ten pakiet nie jest obecny w domyślnym pakiecie Spring. Tak więc, w przypadku Java 9 i wyższych, umieść te słoiki w POM.plik XML:
Wiosna nie zapewnia żadnej metody predefinicznej, jak w przypadku interfejsu. Możemy utworzyć dowolną metodę o dowolnej nazwie. Musimy tylko zaznaczyć je adnotacjami, aby określić, kiedy je zadzwonić przez kontener MKOl.
Tutaj tworzymy metodę initwork () do wykonywania zadania na poziomie początkowym i metody endwork () do wykonania zadania przed zniszczeniem obiektu fasoli.
Zaktualizować Pracownik.Jawa Plik zgodnie z następującym kodem źródłowym:
// Pracownik.Jawa
Uruchom projekt
Teraz uruchom aplikację ponownie i sprawdź konsolę. Wyjście powinno być podobne do poprzedniego wyjścia.
Inicjowanie zadań wykonanych…