The following table list all sample codes related to the spring boot integrations.
Name | Description | Status |
---|---|---|
Ultimate Redis Implementation | The application, discovers ways of interacting with Redis with different TTLs for different Caches | Completed |
Connecting to multiple data sources | The application, demonstrates the way spring boot application connects with multiple databases,connection pooling and both type of database migrations (liquibase and flyway) | Completed |
Implementation of Strategy Design Pattern | The application, demonstrates strategy pattern in spring application and build native image using GraalVM, use a main class to start up the application and builds nativeImage | Completed |
Archunit Implementation | The application, demonstrates how to apply arch unit rules to the spring boot project | Completed |
Hibernate Envers Implementation using spring data JPA | The application, demonstrates how to apply hibernate envers to the spring boot project, monitor the system and alert when CPU usage is high or when system is down | Completed |
Graph QL implementation using webflux | The application, demonstrates the way to connect to database using graph ql using webflux | Completed |
Hibernate 2nd Level Cache Using Redis | The application, demonstrates how to apply Hibernate 2nd level cache using redis in a spring boot project , testing using QueryCounting, implemented hypersistence Repository instead of default JPARepository | Completed |
Read Replica Postgres with connection optimization | The application, demonstrates saving the data in Postgresql and then read from replica instance with optimized connection handling via LazyConnectionDataSourceProxy | Completed |
BackgroundJobs and Scheduling using Jobrunr | The application, demonstrates running background jobs and scheduling the tasks using Jobrunr | Completed |
MultiTenancy DB Based | The application, demonstrates running multi tenancy in JPA using different databases but same DDLs and DMLs | Completed |
MultiTenancy Partition Based | The application, demonstrates running multi tenancy in JPA using partition based i.e Shared Database with Shared table | Completed |
MultiTenancy Schema Based | The application, demonstrates running multi tenancy in JPA using schema based i.e Shared Database with Separate Schema | Completed |
MultiTenancy with multipledatsources | The application, demonstrates running multi tenancy in JPA using all strategies using multidatasources | Completed |
mongodb-elasticsearch-integration | The application, demonstrates saving the data in MongoDb and then searching in ElasticSearch for quick Search, GeoSpatial Search | WIP |
spring-boot-graphql-querydsl | The application, demonstrates the way to connect to database using graph ql and querydsl | WIP |
spring-boot-graphql-webmvc | The application, demonstrates how to apply graphql concepts to the spring boot project | WIP |
Choas Engineering Principles | The application, demonstrates how to apply choas engineering concepts to the spring boot project, test using Gatling to demonstrate the difference | WIP |
Feature Toggles | The application, demonstrates how to apply feature toggles concepts to the spring boot project | WIP |
Rabbit Mq Implementation | The application, demonstrates how rabbitmq works with producer side acknowledgement | Completed |
Spring Batch Implementation | The application, demonstrates implementing Spring Batch 5 using simple config and creating batch tables using liquibase | Completed |
Rest API Documentation with examples | This application, demonstrates ability to generate pdf API documentation using spring rest docs | Completed |
Custom SequenceNumber and LazyConnectionDataSourceProxy for db connection improvement | This application, demonstrated ability to create custom sequences, using datasource-proxy and LazyConnectionDataSourceProxy for db connection improvement using mariadb | Completed |
KeySet pagination and dynamic search | Implements KeySet Pagination using Blaze Persistence and enable dynamic search using specifications | Completed |
For More info about this repository, Please visit here
Repo is built on the following main stack:
- Java – Languages
- JavaScript – Languages
- SQL – Languages
- Node.js – Frameworks (Full Stack)
- Project Reactor – Java Tools
- QueryDSL – Java Tools
- Spring Framework – Frameworks (Full Stack)
- jQuery – Javascript UI Libraries
- Cloud DB for Mysql – SQL Database as a Service
- H2 Database – Databases
- Liquibase – Database Tools
- MariaDB – Databases
- Microsoft SQL Server – Databases
- MongoDB – Databases
- MySQL – Databases
- PostgreSQL – Databases
- RabbitMQ – Message Queue
- Redis – In-Memory Databases
- Serverless AppSync – GraphQL Tools
- Spring Data – Database Tools
- jOOQ – Database Tools
- CircleCI – Continuous Integration
- Docker – Virtual Machine Platforms & Containers
- Docker Compose – Container Tools
- FindBugs – Code Review
- GitHub Actions – Continuous Integration
- Gradle – Java Build Tools
- Grafana – Monitoring Tools
- Jenkins – Continuous Integration
- Kibana – Monitoring Tools
- Logback – Log Management
- Loki – Logging Tools
- Prometheus – Monitoring Tools
- Apache Camel – Platform as a Service
- Alpine Linux – Operating Systems
- Base – CRM
- Elasticsearch – Search as a Service
- Shell – Shells
Full tech stack here
Start postgres and pgadmin
docker compose up postgres pgadmin4
Clean up everything using
docker system prune -a -f --volumes
Claim unused volumes
docker volume prune
Running container
docker container ls
How to overwrite local changes with git pull
Stash local changes:
$ git stash
Pull changes from remote:
$ git pull
How to revert the changes that are pushed to remove
$ git revert $hash