In order to develop microservices in this chapter, there may be a lot of code that could be reused between the two microservices. To accommodate this, the following project structure is used in this chapter:
spring-boot-2-taxi/: This is the parent Maven project of all the following projects:
- ├── spring-boot-2-taxi-config/: This is a Maven project that will have all the common configurations
- ├── spring-boot-2-taxi-model/: This is a Maven project that will have all the common data transfer objects
- ├── spring-boot-2-taxi-service/: This is a Maven project that will be responsible for the Taxi Microservice
- ├── spring-boot-2-taxi-book-service/: This is a Maven project that will be responsible for the Taxi Booking microservice
This project structure follows a Maven module approach, which enables code reuse and faster building of the projects.