An open API service indexing awesome lists of open source software.

https://github.com/kotelnikovav/shareit

Repository for exploring the capabilities of testing libraries
https://github.com/kotelnikovav/shareit

docker hibernate-orm java junit maven mockito postgresql rest spring-boot

Last synced: 10 months ago
JSON representation

Repository for exploring the capabilities of testing libraries

Awesome Lists containing this project

README

          

# Приложение ShareIt.
## 1. Описание проекта.
### 1.1 Идея приложения.
ShareIt — платформа для аренды и шеринга вещей. Пользователи могут делиться своими вещами, бронировать их на
определённые даты и блокировать доступ других пользователей к забронированным товарам. В случае отсутствия нужной
вещи можно оставить запрос для добавления новых предложений.
Основная цель - отработка навыков работы с БД с помощью Hibernate ORM, а также разработки модульного и интеграционного
тестирования.
### 1.2 Основная функциональность приложения.
Основные функции приложения ShareIt:

- Управление пользователями (Users):
- Создание пользователя
- Обновление данных пользователя
- Получение информации о пользователе
- Удаление пользователя

- Управление вещами (Items):
- Создание вещи
- Создание вещи по запросу
- Обновление вещи
- Получение информации о вещи

- Управление запросами (Requests):
- Создание запроса
- Получение запросов пользователя
- Получение информации о запросе

- Управление бронированиями (Bookings):
- Создание бронирования
- Подтверждение бронирования
- Получение информации о бронировании
- Получение всех бронирований пользователя
- Получение всех бронирований владельца

- Управление комментариями (Comments):
- Добавление комментария
- Получение комментариев

- Дополнительные функции:
- Проверка доступности вещи
- Обработка ошибок

### 1.3 Стек используемых технологий.
Основные технологии и инструменты, используемые в данном проекте:
- Java (Amazon Corretto 21.0.6);
- Maven;
- Spring Boot;
- PostgreSQL;
- Hibernate ORM;
- Docker;
- REST;
- JUnit;
- Mockito.

## 2. Инструкция по развертыванию проекта.
Для запуска приложения необходимо:
- склонировать проект: https://github.com/KotelnikovAV/java-shareit.git;
- открыть проект с помощью IntelliJ IDEA и выполнить команду mvn package;
- запустить исполнение файла docker-compose.yml.

После успешного исполнения файла docker-compose.yml приложение будет доступно на порту 8080.