serwlety w aplikacjach webowych
Serwlety w aplikacjach webowych
25 marca 2017
Nagłówki ciasteczka i sesje
Nagłówki, sesje i ciasteczka
1 kwietnia 2017
pogodynka w spring mvc

Kolejna informacja dotycząca postępu prac nad projektem Pogodynka. Dzisiaj trochę o Spring MVC i przykładowej konfiguracji, zapraszam do lektury.

W tym tygodniu przygotowałem dla Was dość obszerny wpis dotyczący serwletów w aplikacjach Java. Jego przygotowanie zajęło mi sporo czasu więc automatycznie zostało go mniej na samą Pogodynkę.

Jednak i tutaj udało się pchnąć sprawy do przodu. W tym momencie datavault jest już “działającą” aplikacją webową opartą o Spring MVC. Uparłem się i całą konfigurację zrobiłem bez użycia Spring Boot i plików XML. Chcę to zrobić w ten sposób, aby pokazać Wam przykład takich właśnie aplikacji.

W tym momencie obsługiwane są żądania typu POST i GET, które będą odpowiednio dodawały nowy wpis dotyczący temperatury i pobierały listę temperatur.

Warstwa widoku

W pierwotnej wersji zakładałem, że napiszę osobną aplikację w Java Script, która będzie odpowiadała za generowanie widoku. Coraz bardziej się nad tym zastanawiam. Widzę pewną wartość w zrobieniu tego w “stary” sposób.

W “stary”, czyli z wykorzystaniem plików JSP. Dzięki temu będę miał dla Was przykład aplikacji używającej właśnie takiego podejścia do kolejnych artykułów, a artykuł o JSP na pewno powstanie.

Spring MVC

Aktualnie aplikacja używa Spring MVC. Konfiguracja w większości używa ustawień domyślnych, które włączone są przy pomocy kilku “springowych” adnotacji:

Przykład ich użycia możesz zobaczyć w klasie WebAppConfiguration. Klasa ta jest użyta jako bazowy “applicationContext”, włącza obsługę Spring MVC oraz wskazuje pakiety, w których Spring szuka klas, którymi zarządza (potocznie mówi się tu o bean’ach).

Kolejną istotną klasą jest DatavaultInitializer, która konfiguruje instancję DispatcherServlet obsługującego aplikację (o tym jak to ustrojstwo magicznie działa możesz przeczytać we wcześniej wspomnianym artykule o serwletach),

Przygotowałem też naiwną implementację klasy odpowiedzialnej za zarządzanie temperaturami TemperatureServiceImpl, w obecnym kształcie nie robi ona jeszcze nic użytecznego.

Podsumowanie

Kodu w tym tygodniu nie pojawiło się za wiele, jednak “szkielet” aplikacji webowej już jest i czeka na lepsze czasy ;). Jak zwykle całość kodu dostępna jest w repozytorium. Do następnego razu!

Newsletter

  Jeśli chcesz otrzymywać informacje o nowych artykułach na blogu prosto na Twój email, zapisz się 🙂

Zdjęcie dzięki uprzejmości https://www.flickr.com/photos/marksuth/8768228386/sizes/l

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *