Skip to content

sendelufa/jd0

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Дипломный проект «Java-разработчик c нуля»

Реализовать бэкенд блогового движка

Требования к окружению и компонентам дипломного проекта

Версия JDK 11 (указать в pom.xml)
Система контроля версий git
Версия Spring Boot 2.2.4
База данных MySQL 8 или PostgreSQL 9/11
Сборщик проекта Maven
🌟 Тестирование JUnit 4 или 5

Особенности проверки дипломного проекта

Проверка вашего дипломного проекта преподавателем осуществляется в течение 7-ми дней после отправки вашего ответа, поэтому рекомендуется выполнить каждый этап максимально полно перед отправкой проекта на проверку.

Рекомендуется использовать минимум две ветки - master и dev. Вы ведете разработку в ветке dev, и перед отправкой на проверку сливаете изменения в master, ветку master проверяет преподаватель, а вы дальше продолжаете работу в ветке dev, ожидая ответа, и работаете над следующим этапом.

Для реализации дипломного проекта вам необходимо выполнить следующие этапы

  1. Создать Git-репозиторий локально, также желательно использовать удаленный репозиторий на github.com (чтобы случайно не потерять результаты своей работы при форс-мажорных ситуациях).
  2. Создать новое Spring-приложение, аналогичное приложению BookLibrary, которое вы разрабатывали в рамках модуля 12:
    1. Подключить с помощью Maven необходимые зависимости.
    2. Создать класс и метод Main, в котором должно запускаться Spring-приложение: SpringApplication.run(Main.class, args);
    3. Создать файл конфигурации application.yml
    4. Создать в пакете controller классы:
    • DefaultController - для обычных запросов не через API (главная страница - /, в частности)
    • ApiPostController - обрабатывает все запросы /api/post/*
    • ApiAuthController - обрабатывает все запросы /api/auth/*
    • ApiGeneralController - для прочих запросов к API.
  3. Подключить к приложению frontend, разместив содержимое архива dist.zip в подпапках папки resources - аналогично тому, как это сделано в проекте BookLibrary: CSS- и JS-файлы, а также изображения в папках /resources/static/css, /resources/static/js и /resources/static/img соответственно, а файл index.html - в папке /resources/templates/.
  4. Сделать так, чтобы при входе на главную страницу открывался шаблон index.html (аналогично тому, как это сделано в проекте BookLibrary).
  5. На этом этапе необходимо слить изменения в ветку master и отправить на проверку преподавателю.
  6. Создать структуру базы данных с помощью сущностей Hibernate в пакете model, по примеру проекта BookLibrary. Структура базы данных описана в файле DB_schema.
  7. На этом этапе необходимо слить изменения в ветку master и отправить на проверку.
  8. Реализовать сначала методы API для получения информации о блоге (/api/init) и для получения постов (/api/post), а затем и все остальные методы API в соответствии с документацией в файле API. Для ускорения разработки приложения вы можете тестировать API с помощью таких сервисов как Talend API Tester - Free Edition (расширение для браузера Google Chrome) или приложение Postman (Win / Mac OS / Linux).
  9. Сделать так, чтобы при открытии вашего приложения по ссылкам (например, /post/534/) тоже выдавался файл index.html. Frontend-приложение при этом само определит, какую информацию нужно загрузить. В случае, если запрошена страница по адресу, который не существует (например, какой-нибудь /fhdsjfhkjsdf/), переадресовывать на страницу /404/, на которой выдавать всё ту же страницу index.html с кодом ответа 404. Frontend-приложение автоматически определит, по какому адресу был запрос, и отобразит ошибку 404.

Добавьте readme.md файл в корень репозитория, в котором:

  • опишите проект
  • стек используемых технологий
  • краткую инструкция как запустить локально (команды, действия, какие переменные среды обязательно требуется задать)
  • ссылку на рабочий проект (на деплой хероку)

Для написания красивого и понятного readme.md вам поможет руководство Как написать красивый и информативный README.md

Ссылки на материалы

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published