Giter Site home page Giter Site logo

paroshdey / spring-microservices-onlineshopping-example Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vipul-gorasiya/spring-microservices-onlineshopping-example

0.0 1.0 0.0 54.65 MB

Microservice project for OnlineShopping built using Spring-cloud

Java 28.72% JavaScript 1.15% TypeScript 20.36% CSS 0.46% HTML 5.78% Shell 25.71% Batchfile 17.83%

spring-microservices-onlineshopping-example's Introduction

Online Shopping Example with Microservices Using Spring

Requiremenent

Micro Services:

  • Customer Service:
    • Retrieve all Customers
    • Retrieve one Customer using Id.
    • Add Customer, When a customer is added, sales order service should also create a copy of the customer in it
    • Update Customer
    • Delete Customer
    • Should be Deployed on tomcat
  • Item Service:
    • Retrieve all Items
    • Retrieve one Item with Item Name.
    • Add Item
    • Update Item
    • Delete Item
    • Should be deployed on Jersy
  • Sales Order Service:
    • Retrieve all Orders
    • Retrieve one Order with Order Id
    • Add Order
    • Should be deployed on Undertow server

Service Registry:

  • All above services should Register them with this Registry

API Gateway:

  • All Services should be accessible with single gateway

Configuration of the application should be centralized

Technologies Used

  • Angular 7
  • PrimeNG for reach and responsive UI
  • Java 1.8
  • Spring Boot
  • Spring Cloud (Eureka Discovery,Eureka Server, Config, Zuul)
  • Spring Data, Hibernate
  • H2 Database
  • Kafka for Communication between microservices
  • Spring Java Mailer
  • Swagger2 (UI for testing of APIs)

Softwares Pre-requisite

  • Java 1.8
  • Maven
  • Eclipse Neon(4.6.3+) / Spring Tool Suite(3.8.4+) - Optional. You can run projects using Maven
  • Kafka ( alreay present in repository)
  • SMTP Mail Server Jar ( Already present in repository)
  • Node.js (8.x+) + NPM (5.6.x+)

How to Run the project

Run Zookeeper and Kafka

  • Run Zookeeper
    • Windows: Go to 'kafka_2.11-2.0.0' and Run bin\windows\zookeeper-server-start.bat config\zookeeper.properties
    • Linux: Go to 'kafka_2.11-2.0.0' and Run bin\zookeeper-server-start.sh config\zookeeper.properties
  • Run Kafka
    • Windows: Go to 'kafka_2.11-2.0.0' and Run bin\windows\kafka-server-start.bat config\server.properties
    • Linux: Go to 'kafka_2.11-2.0.0' and Run bin\kafka-server-start.sh config\server.properties

Run DevNullSmtp.jar

Go to smtp-jar and run 'java -jar DevNullSmtp.jar'

Run Configuration Server

Import 'ConfigurationServer' as Maven project and Run it as Spring boot application.

Run Eureka Server

Import 'EurekaServer' as Maven project and Run it as Spring boot application.

Run Customer Service

Import 'CustomerService' as Maven project and Run it as Spring boot application.

Run Item Service

Import 'ItemService' as Maven project and Run it as Spring boot application.

Run Sales Order Service

Import 'SalesOrderService' as Maven project and Run it as Spring boot application.

Run API Gateway

Import 'APIGateway' as Maven project and Run it as Spring boot application.

Run Angular 7.x based Shopping UI

1. Install angular CLI - 'npm install -g @angular/cli'
2. Go to 'ShoppingUI/ShoppingUI' folder which has 'package.json' file. 
3. Run 'npm install'
4. Run 'ng serve --open'. Application will open up in a browser.

spring-microservices-onlineshopping-example's People

Contributors

vipul-gorasiya avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.