Page Analyzer — полноценное веб-приложение, реализованное на фреймворке Javalin по архитектуре MVC.
Приложение позволяет:
- Добавлять сайты и сохранять их в базу данных.
- Выполнять проверки сайтов: извлекать статус-код,
<title>,<h1>и описание (<meta name="description">). - Отображать информацию на страницах с помощью шаблонизатора JTE и CSS-фреймворка Bootstrap.
- Java 21
- Javalin — Фреймворк
- HikariCP
- H2 Database — Локальная БД
- PostgreSQL — Серверная БД
- JTE — шаблонизатор
- Unirest — HTTP-клиент
- Jsoup — HTML-парсер
- SLF4J Simple — логирование
- JUnit 5, MockWebServer — тестирование
- Gradle, GitHub Actions, SonarQube — CI/CD и покрытие
- Клонировать репозиторий:
git clone https://github.com/sergeycherkasovv/java-project-72.git cd java-project-72 - Запустить приложение:
make start
- Запуск всех тестов:
make test
src/
├── main/
│ ├── java/hexlet/code/
│ │ ├── App.java # Точка входа и конфигурация Javalin
│ │ ├── controller/ # HTTP контроллеры
│ │ ├── model/ # Сущности Url, UrlCheck
│ │ ├── repository/ # Репозитории для работы с БД
│ │ ├── dto/ # DTO для шаблонов
│ │ ├── util/ # Утилиты (DataBaseService, ReadFiles, UrlUtils)
│ └── resources/
│ ├── templates/ # JTE-шаблоны
│ ├── schema.sql # Скрипт создания таблиц
├── test/ # Юнит и интеграционные тесты c MockWebServer
└── build.gradle.kts # Сборка Gradle
Разработано в рамках обучения на Hexlet. Автор: sergeycherkasovv
Почта: [email protected]