Helpful (hopefully) SpringBoot template that support basic needs such as:
- CRUD to database using
JpaRepository
- Authentication and authorization with Spring security + JSON Web Token
- Seeder to initialize data on your database
- Fully reactive using Project Reactor
List of modules
Module Name | Description |
---|---|
application | SpringBoot main application class and properties file |
configuration | Configuration classes including injected bean and security |
entity | Database model classes |
enumeration | Enums |
exception | Exception classes |
helper | Helper classes |
properties | Spring properties classes |
repository | Database repository classes |
security | Security related classes including auth filter logic and JWT |
seeder | Database seeder classes |
service | Service interfaces to be injected |
service-impl | Classes of service layer including main logic of every endpoint |
service-model | Model classes for service layer |
web | Web controller classes to serve endpoint |
web-model | Model classes for controller layer |
Add -Dspring.profiles.active=<PROFILE>
on your VM options, for example -Dspring.profiles.active=dev
To activate database seeder, you must use dev
profile and set app.config.database.seeder-active=true
on properties