Bozhao Li
- Function Requirement
- Non-Functional Requirement
- Microservices
- SQL and NOSQL
- OO Design
- REST API
- Tests(in Restaurant service and Payment service)
- handle error (check length of cardNum and securityCode)
- security
- Bonus
- [?] UI to design a website(a little bit hard for me and time is limited)
- [?] MQ (still config this function)
- Spring Cloud circuit(like eureka,hystrix)
- Well Documented
- search restaurant by restaurant name
- user can place an order and make a payment
- restaurant-service (MongoDB)
- Order-service(MongoDB)
- Payment-service(MYSQL)
1.upload(): (POST)
"/RestaurantInfo"
upload data.
2 delete ():(DELETE)
"/RestaurantInfo"
Delete all the data.
3 findRestaurant() (GET)
"/RestaurantInfo/{name}"
Find the restaurant by name.
4 findItems() (GET)
"/RestaurantInfo/{name}/Items"
get menuItems by Restaurant name
1.upload(): (POST)
/OrderService
upload ORDERS;
2 delete() :(DELETE)
/OrderService
DELETE ALL ORDERS.
3 deleteById() : (DELETE)
/OrderService/{orderId}
DELETE ORDERS BY ID.
4 findAll() (GET)
/OrderService
Find ALL ORDERS
1.save(): (POST)
/Payment
uipload a payment
2 delete() :(DELETE)
/Payment
3 findALLPaymentt() (GET)
/Payment
Find the payment history
- Start docker
docker-compose up -d
in these folders/Orderservice
,/Paymentservice
,/Restaurantservice
,/
- Start all servers
sh ./start-server.sh
java -jar Orderservice/target/orderservice-1.0-SNAPSHOT.jar&.
java -jar Paymentservice/target/PaymentService-0.0.1-SNAPSHOT.jar&.
java -jar RestaurantService/target/RestaurantService-0.0.1-SNAPSHOT.jar&
java -jar platform/eureka/target/eureka-1.0-SNAPSHOT.jar&
java -jar platform/hystrix-dashboard/target/hystrix-dashboard-1.0-SNAPSHOT.jar
- Upload all data
sh ./start-uploadData.sh
- Restaurant server in
localhost:9004
- Order server in
localhost:9005
- Payment Server in
localhost:9006
- Eureka in
localhost:8761
- hytrix in
localhost:7979
- Still need to watch the video about RabbitMQ and how to design a website based on the backend.
- Need to bind all the data into one for you can only need to upload a menu for each restaurant rather than upload like order and payment in order to maintain consistencey.
- Bittiger and Ross
- Spring Document
- Google and stackoverflow