Открытое первое занятие проекта BootJava

Spring Boot 2.x + Spring Data Rest with HATEOAS

Материалы открытого занятия

Вступление

1. Что такое Spring-Boot. Первое приложение / Spring Initializr

Spring Initializrs: https://start.spring.io/

2. Spring Boot maven plugin. Конвертация в WAR. Детали реализации

3. Настройка проекта

4. Проект Lombok

Apply patch 1_01_user_with_lombok.patch

Работа с DB (H2, Spring Data JPA)

5. Spring Data JPA. ApplicationRunner

Apply patch 1_02_data_jpa.patch

6. H2. Популирование и конфигурирование

Apply patch 1_03_h2_init.patch

H2 Консоль

# ImMemory
    url: jdbc:h2:mem:voting
    tcp: jdbc:h2:tcp://localhost:9092/mem:voting
# Absolute path
    url: jdbc:h2:C:/projects/bootjava/restorant-voting/db/voting
    tcp: jdbc:h2:tcp://localhost:9092/C:/projects/bootjava/restorant-voting/db/voting
# Relative path form current dir
    url: jdbc:h2:./db/voting
# Relative path from home
    url: jdbc:h2:~/voting
    tcp: jdbc:h2:tcp://localhost:9092/~/voting

7. Рефакторинг model. Spring Data JPA @Query

Apply patch 1_04_model_query.patch

Spring Data REST + HATEOAS

8. Spring Data REST

Apply patch 1_05_data_rest.patch
JSON Formatter: chrome://extensions/?id=bcjindcccaagfpapjjmafapmmgkkhgoa
Spring Data REST

9. Конфигурирование Jackson

Apply 1_06_jackson.patch

10. Добавление Vote + HATEOAS

Apply patch 1_07_vote.patch
  • Common application properties # JACKSON
  • Apply patch 1_08_hateoas_vote.patch

    11. Paging and ResourcesAssembler

    Apply patch 1_9_paging.patch

    Домашнее задание:

    по ТЗ к выпускному проекту стажировки Topjava

    Optional

    Примечания: