No description, website, or topics provided.
Java
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
gradle/wrapper
src
.gitignore
README.md
build.gradle
gradlew
gradlew.bat

README.md

Сущности

Отпуск

дата начала : дата
дата конца : дата
пункт назначения : строка
пользователь : Пользователь

Пользователь

логин : строка
пароль : строка
имя : строка
фамилия : строка
год рождения : число
интересы : строка
отпуска : список Отпуск

Шаг 1. Инициализация приложения, профили

  • Создать приложение через генерацию на сайте

Шаг 2. Запуск приложения

  • Idea, jar, war

Шаг 3. Доменный объект как REST controller

  • Создать доменный объект (User)
  • Добавить несколько полей (login, name, age)
  • Добавить сохранение нескольких объектов в BootStrap (Main class, init method)
  • Получить их список в браузере

Шаг 4. Кастомизация вывода с помощью gson views

  • Добавить поле password в объект User
  • Показать, что оно тоже отображается
  • Добавить json views
  • Продемонстрировать, что поле password исчезло из вывода
  • Показать, что можно для списка и для одного ресурса делать разный вывод

Шаг 5. Добавление второй сущности

  • Добавить вторую сущность Trip
  • Связать сущности
  • Создать rest controller для Трипа
  • Продемонстрировать создание и получение списка Трипов для конкретного пользователя

Шаг 6. Юнит тесты для контроллера

  • Unit тесты - классика на базе Junit+Mockito или Spock

Шаг 7. Функциональные тесты для контроллера

  • реализовать тест для index и save
  • быстрые тесты
  • классические тесты на работающем приложении

Шаг 8. Версионирование json view

  • создать новый контроллер для пользователя с таким же именем и другой версией
  • написать новую версию методов
  • продемонстрировать работу версионированного API через версию в url
  • нет решения out of box в boot

Шаг 9. Кастомный контроллер (только для Grails)

Шаг 10. Console (только для Grails)

Заключение

  • протитипирование - grails; plugins, community - spring. Доверие в энтерпрайзе - spring