Skip to content

Several microservices that build up a small store web application to retrieve information on devices and displaying the information on Java Server Pages.

Notifications You must be signed in to change notification settings

Jenkins1128/Microservices-Store-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

Microservices - Store App

This application consists of several microservices that build up a small store web application to retrieve information on devices and displaying the information on Java Server Pages.

Isaiah Jenkins

Technologies

  • Java (Server-side language)
  • Spring Boot (Microservices)
  • Boot -> Spring Web (Web/REST app)
  • Boot -> Spring Data JPA (Java Persistence API w/ Hibernate)
  • Boot -> Eureka Server (Spring Cloud Discovery)
  • Boot -> Eureka Discovery Client (Spring Cloud Discovery)
  • Boot -> JDBC API (Database Connectivity)
  • Boot -> MySQL Driver (JDBC for MySQL)
  • MySQL (Server)
  • MySQL Workbench (visual database design tool for MySQL database)
  • Jersey (JAX-RS)
  • Tomcat Embed Jasper (JSP file parser)
  • Tomcat Servlet API
  • Javax Servlet API
  • JSP (Java Server Page)
  • JSTL (JavaServer Pages Standard Tag Library)
  • Maven (Dependency Injection)
  • Eclispe (IDE, Java EE version 2020-12)
  • IntelliJ (IDE, IDEA CE)

Download IDEs and MySQL tools

  1. Eclispe (IDE, Java EE version 2020-12)
  2. IntelliJ (IDE, IDEA CE)
  3. MySQL Community Server
  4. MySQL Workbench

Set up schema and tables on MySQL Workbench

Note: Make sure to start your MySQL server on your computer.

Schema - Devices

Screen Shot 2021-03-10 at 11 52 51 PM

Tables - apple, samsung

Screen Shot 2021-03-10 at 11 53 42 PM

Screen Shot 2021-03-10 at 11 54 09 PM

Overview on the Microservice architecture

  1. Store - Web app that retrieves information on the device types from Samsung and Apple microservices to displays them on Java server pages.
  2. Eureka server - A discovery server responsible for holding instances of microservice clients and providing easier navigation.
  3. Samsung - Extracts the list of JSON Device objects gathered from Samsung persistence.
  4. Samsung2 - Extra copy of Samsung to test client-side load balancing.
  5. Apple - Extracts the list of JSON Device objects gathered from Apple persistence.
  6. Apple persistence - Gathers information from MySQL server on apple devices providing a list of JSON Device objects.
  7. Samsung persistence - Gathers information from MySQL server on Samsung devices providing a list of JSON Device objects.

Extract microservices and import into IDEs

  1. Import each microservice folder except into a separate Intellij Maven project.
  2. Import Store microservice into Eclipse.

How to run Store

  1. Start the Eureka server in IntelliJ.
  2. Start Store in Eclipse.
  3. Start remaining microservices in IntelliJ.
  4. Go to the Eureka server page. You should have the following 5 applications running below:

Screen Shot 2021-03-11 at 8 08 03 AM

  1. Go to the Store page and click on either Samsung or Apple.

Screen Shot 2021-03-11 at 8 13 19 AM

Screen Shot 2021-03-11 at 8 13 48 AM

About

Several microservices that build up a small store web application to retrieve information on devices and displaying the information on Java Server Pages.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages