Web application that allows you:
- manage users (create, view the list and details, edit and delete) with RESTful services,
- login/register in the system with using PostgreSQL data
- see the list of transaction from NoSQL (MongoDB)
- Write and read event stream from kafka
Tags: #java, #springboot, #hibernate, #jpa, #springSecurity, #mvc, #thymeleaf, #postgreSQL, #mongodb, #kafka
- Use src/resources/application.properties for configure connection to DB MongoDB, PostgreSQL or use existed demo access.
- Use external kafka server or local server, e.g with docker from wurstmeister image
Fill with some value
YOUR_BROKER_HOST_PUBLIC_IP
atKAFKA_ADVERTISED_LISTENERS: INSIDE://kafka:9093,OUTSIDE://YOUR_BROKER_HOST_PUBLIC_IP:9092
inkafka_conf/docker-compose.yml
file to call kafka from external hosts. Then start:
$ docker-compose -f .kafka_conf/docker-compose.yml up -d
Move src/main/java/com/khsa/kafka
to src/main/java/com/khsa/usermanagement/kafka
to enable auto assembly Kafka-Classes by Spring-Boot
3. Set "VM options" -Djdk.tls.client.protocols=TLSv1.2
![](info_images/RunDebug Configurations.jpg?raw=true)
- PostgreSQL and MongoDB connection in one Java Spring project.
- Thymeleaf templates for web pages with multi language option
- REST API for manage entities.
- Complex dependencies and connections between Domain models.
- Password generator (64 bit lenght, SHA512 method, using static Salt).
- Enum (gender) in "User" model with converter for stable working with Spring WEB and Hibernate
Веб-приложение позволяет:
- Управлять пользователями (создавать, просматривать список и детали, редактировать и удалять) с помощью служб RESTful,
- Авторизоваться / зарегистрироваться в системе с использованием данных из PostgreSQL и кешированием пароля
- Посмотреть веб-страницу со списком транзакций из NoSQL (MongoDB) Тэги: #java, #springboot, #hibernate, #jpa, #springSecurity, #mvc, #thymeleaf, #postgreSQL, #mongodb, #kafka
В проекте используется: JDK14, MongoDB Atlas Cluster, удаленный сервер PostgreSQL, Local Kafka Server.
- Используйте src / resources / application.properties для изменения настроек подключения к БД MongoDB, PostgreSQL или используйте существующий демонстрационный доступ.
- Необходимо использовать внешний или локальный сервер kafka, например с докером из образа wurstmeister
Заполните некоторым значением
YOUR_BROKER_HOST_PUBLIC_IP
вKAFKA_ADVERTISED_LISTENERS: INSIDE: // kafka: 9093, OUTSIDE: // YOUR_BROKER_HOST_PUBLIC_IP: 9092
в файлеkafka_conf/docker-compose.yml
для вызова kafka с внешних хостов. Для запуска образов выполните команду:Переместите$ docker-compose -f .kafka_conf/docker-compose.yml up -d
src/main/java/com/khsa/kafka
вsrc/main/java/com/khsa/usermanagement/kafka
, чтобы включить автоматическую сборку Классов-Кафки с помощью Spring-Boot. - Установите "VM options"
-Djdk.tls.client.protocols = TLSv1.2
![](info_images/RunDebug Configurations.jpg?raw=true)
- Использование соединений с PostgreSQL и MongoDB в одном проекте Java Spring.
- Шаблоны Thymeleaf для веб-страниц с возможностью выбора нескольких языков
- REST API для управления сущностями.
- Сложные зависимости и связи между моделями (сущностями).
- Генератор паролей (длина 64 бита, метод SHA512, с использованием статической соли).
- Enum (пол) с конвертером в модели "Пользователь" для работы с Spring WEB и Hibernate
Используется БД Postgres, с таблицами: users - пользователи, roles - поли, user_roles - связка пользователей и ролей
Сервис работает с форматом JSON и имеет следующий набор методов:
- GET http://localhost:8080/user/list
- GET http://localhost:8080/user/get/{id}
- DELETE http://localhost:8080/user/delete/{id}
- POST http://localhost:8080/user/add
- PUT http://localhost:8080/user/edit/{id}
Коллекция POSTMAN запросов находится в файле UserManagementLocalHost.postman_collection.json (временно неактуально)