Start szkolenia “Kompletna aplikacja w języku Java” II Edycja

Druga edycja kursu “Kompletna aplikacja w języku Java – od zera do installera” właśnie wystartował! Zapisywać się można na https://java.clockworkjava.pl. Dzięki niej krok po kroku stworzysz pełnoprawną aplikację w języku Java, gotową do użycia przez klienta.

Czytaj dalej Start szkolenia “Kompletna aplikacja w języku Java” II Edycja

Fundamenty Spring – #1 Hello Spring!

Rozpoczynamy przygodę z nowym cyklem – Fundamenty Spring Framework opartym na podstawie kursu o tym samym tytule. Jest on naturalną, popularną kontynuacją nauki po poznaniu podstaw Javy. W kolejnych artykułach z serii wspomnę o rzeczach, które są niezbędne w codziennej pracy. Czas na nasze pierwsze Hello!

Czytaj dalej Fundamenty Spring – #1 Hello Spring!

Przesłanianie zmiennych. Studium przypadku.

Jakiś czas temu poproszono mnie o pomoc przy kawałku bardzo prostego kodu, bardzo prostego oczywiście z mojej obecnej perspektywy.

Była tam jedna funkcja, która idealnie wpadła w cykl “studium przypadku”. Kod wyglądał mniej więcej tak:

public class Shadowing {
    
    private String name;
    
    String setname(String Name) {
        name = name;
        return name;
    }
}

Oczywiście kod nie działał, jak powinien. Jednak kompilator nie zgłaszał żadnych błędów, bo od strony językowej wszystko gra. Natomiast błędów logicznych było tu kilka, temu kawałek kodu wylądował na blogu.

Czytaj dalej Przesłanianie zmiennych. Studium przypadku.

Droga do Java Junior Developera – nagrania z mentoringu

W dzisiejszym artykule mam dla was kilka informacji o inicjatywie pod nazwą “Droga do Java Junior Developera”. Jakiś czas temu odezwał się do mnie Marcin Pypeć z pewną interesującą inicjatywą.

Czytaj dalej Droga do Java Junior Developera – nagrania z mentoringu

Persistence Context – studium przypadku z rozmowy kwalifikacyjnej

Ostatnio znajomy podrzucił mi przykładowe pytanie z rozmowy kwalifikacyjnej dotyczące JPA/Hibernate i stwierdziłem, że jest to ciekawy przykład na przedstawienie działanie Persistence Context.

Czytaj dalej Persistence Context – studium przypadku z rozmowy kwalifikacyjnej

Praca z czasem i datami w języku Java

Czasy zamierzchłe

Przed ósmym wydaniem Javy do obsługi dat używano dwóch klas – Date oraz Calendar. Praca z nimi nie należała do najprzyjemniejszych. Na co dzień irytowała niespójność API (np. dni numerowane od zera, a miesiące od jedynki), a przy szczególnych okazjach brak zabezpieczeń, gdy kilka wątków pracowało na tym samym obiekcie. Efekt był taki, że popularność zdobywały alternatywne biblioteki do zarządzania czasem, najpopularniejszą z nich była ta o nazwie Joda-Time

Nie poświęcimy tym dwóm klasom tutaj miejsca, bo Java 8 przyniosła ze sobą coś lepszego.

Czytaj dalej Praca z czasem i datami w języku Java

Integracja ReactJS i Spring Framework.

Na mojej platformie pojawiły się pierwsze warsztaty programistyczne, dotyczą one integracji Springa z ReactJS. Czym są warsztaty programistyczne? Są to krótkie kursy (ten trwa dwie godziny z niewielkim hakiem) koncentrujące się na jednym, konkretnym zagadnieniu. W tym wypadku jest to zestawienie komunikacji pomiędzy częścią serwerową w Javie, a front-endem w JavaScript i oprogramowanie operacji z rodziny Create, Read, Update, Delete.


Tworzymy więc aplikację serwerową opartą na frameworku Spring oraz aplikację internetową z użyciem biblioteki ReactJS. Za pomocą API typu REST integrujemy je ze sobą, tak by stanowiły całość i stanowiły odbicie realnej aplikacji z jakimi przyjdzie Ci pracować.

  • Tworzymy aplikację serwerową z użyciem Spring Framework
  • Tworzymy obiekt domenowy i repozytorium
  • Za pomocą RestControllera nasłuchujemy na żądania HTTP
  • Implementujemy obsługę metod GET, POST, PUT, DELETE
  • Wyciągamy dane z adresu URL na jaki przyszedł request, jak i wyciągamy dane z jego samego.
  • Konfigurujemy CORS, by umożliwić komunikację z front-endem
  • Tworzymy aplikację internetową w ReactJS
  • Z poziomu JavaScript łączymy się z częścią serwerową
  • W bonusie poprawiamy wygląd naszej strony za pomocą react-bootstrap

Do warsztatów można dołączyć pod tym linkiem.