/ylab-01.2024

Y-lab intensive java 01.2024

Primary LanguageJava

Meter monitoring service

Monitoring Service Console Application

Is a simple Java-based program designed to manage and monitor various aspects related to meter readings and user submissions. The application offers different user interfaces for both regular and administrative users, allowing them to perform tasks such as submitting readings, accessing submission history, and managing meter types.

Key Features

User Authentication: Users can register, log in, and log out, ensuring secure access to the system. Submission Management: Users can submit meter readings, view their submission history, and retrieve specific submissions by date. Administrative Actions: Administrators have additional features, including adding new meter types, accessing audition event history, and retrieving submission information for specific users.

Sprints:

  • sprint 1 Entities, in-memory collections, console interface, javadoc, service tests
  • sprint 2 Docker + postgres, liquibase migrations, repository tests
  • sprint 3 Servlets + tomcat, jackson, validations, aspects, logging
  • sprint 4 Spring core + controllers, jwt auth, rest template, open api + swagger
  • sprint 5 Spring boot. Aspects moved to starters, modules separated

API

img.png

Testing

By default, added user 'admin' with password 'admin'
and administrative role to run tests, add -Denv=test

Run the Project:

  • Clone the repository
  • Open a terminal or command prompt.
  • Navigate to your project directory.
  • Run the following command to execute your application:

On Unix-like systems:

./gradlew publishtomavenlocal
./gradlew backend:bootrun

On Windows:

gradlew.bat publishtomavenlocal
gradlew.bat backend:bootrun

The Gradle wrapper will download the specified Gradle distribution, compile and run your Java application. You need to have docker installed