/quickstart-restful-hello-world

Minimal Spring Boot based RESTful 'Hello World' example, including Swagger.

Primary LanguageJavaApache License 2.0Apache-2.0

Hello, World! - RESTful Application

Minimal Spring Boot based RESTful 'Hello World' example, including Swagger.

Technology stack

Java 17, Spring Boot

Prerequisites

The following items should be installed in your system:

Running locally

This application is a Spring Boot application built using Maven. You can build a jar file and run it from the command line:

git clone https://github.com/ujar-org/quickstart-restful-hello-world.git
cd quickstart-restful-hello-world
./mvnw package
java -jar target/*.jar

You might also want to use Maven's spring-boot:run goal - applications run in an exploded form, as they do in your IDE:

./mvnw spring-boot:run -Dspring-boot.run.profiles=local -P dev

Now you can access to the Swagger UI here: http://localhost:8080/swagger-ui.html

Working with Application in your IDE

  1. On the command line
git clone https://github.com/ujar-org/quickstart-restful-hello-world.git
  1. Inside IDE

In the main menu, choose File -> Open and select the HelloWorldApplication pom.xml. Click on the Open button. Activate "local" profile in the Run settings or set it via environment variables. instruction Wait to indexing completion and push the green "play" button.

  1. Navigate to Swagger UI

Visit http://localhost:8080/swagger-ui.html in your browser.

Code conventions

The code follows Google Code Conventions. Code quality is measured by:

Tests

This project has standard JUnit tests. To run them execute this command:

./mvnw test

It is mandatory to keep test code coverage not below 80 percents and cover all business logic and edge cases.

Versioning

Project uses a three-segment CalVer scheme, with a short year in the major version slot, short month in the minor version slot, and micro/patch version in the third and final slot.

YY.MM.MICRO
  1. YY - short year - 6, 16, 106
  2. MM - short month - 1, 2 ... 11, 12
  3. MICRO - "patch" segment